Company Write Tool
company-writeCreate, update or delete client companies (client teams) and their membership. Companies have no unique name — call company-read "list" with client_id first to check whether a client already belongs to a team before creating a new one. "add_member" requires an existing client account (create one with client-write first) and defaults collaborate_on_new_orders/collaborate_on_new_tickets to true, access_invoices to false, and share_existing_subscriptions to false. "update_member" changes only the flags supplied. "remove_member" of the current owner requires new_owner_client_id, unless they are the company's only member. Every ownership change ("create"/"update" with owner_client_id, "remove_member" with new_owner_client_id) decides whose invoices members with access_invoices can see and who manages the team in the portal, and shares the new owner's existing subscriptions with members who collaborate on orders. "delete" permanently deletes the team, its memberships, pipeline cards and SEO reporting data and cannot be undone; former members keep access to orders, tickets and subscriptions they already collaborate on (use "remove_member" first to revoke it) but lose access to the owner's invoices.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Company name. Max 255 characters, not unique — call company-read "list" with client_id first. Required for "create", optional for "update". | |
| action | Yes | Action to perform. | |
| client_id | No | Client ID of the member. Required for "add_member", "update_member" and "remove_member". Must already exist — create the client with client-write first. | |
| company_id | No | Company ID. Required for "update", "add_member", "update_member", "remove_member" and "delete". | |
| access_invoices | No | Whether the member can see invoices belonging to the company owner. "add_member" defaults to false. | |
| owner_client_id | No | Client ID to set as the company owner. For "create", optional; the owner is attached as a member with all three flags false. For "update", moves ownership to an existing member of the company — cannot be cleared to null. Changes whose invoices members with access_invoices can see and who manages the team, and shares the new owner's existing subscriptions with members who collaborate on orders. | |
| new_owner_client_id | No | Client ID of an existing other member to become the new owner. Required by "remove_member" when removing the current owner while other members remain. Shares the new owner's existing subscriptions with members who collaborate on orders. | |
| collaborate_on_new_orders | No | Whether the member is added as a collaborator on the owner's new orders. "add_member" defaults to true. | |
| collaborate_on_new_tickets | No | Whether the member is added as a collaborator on the owner's new tickets. "add_member" defaults to true. | |
| share_existing_subscriptions | No | For "add_member" only. When true, this client's existing subscriptions are shared with company members who collaborate on orders, so they can submit requests. Defaults to false. Only set true when the user explicitly asks to share the client's existing subscriptions with the team. |