Contacts

Delete a contact

Deletes the contact and everything hanging from it: its relationships with other contacts (in both directions), its notes, its files, its tasks, its payment methods and its customer portal access.

Tool
filmo_contacts_delete
Access: Destructive

Result

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "filmo_contacts_delete",
    "arguments": {
      "contactId": "cont_8f2a1c"
    }
  }
}

generated from the schema

Not reversible

This tool cannot be undone.

Requires human confirmation

Put this tool on your client's “ask before running” list. The annotations are hints that the server declares, not guarantees: do not decide the approval from destructiveHint alone. The server flags this tool with _meta["anthropic/requiresUserInteraction"], which clients that honor it use to ask a person before every call.

The related contacts themselves are NOT deleted. It is NOT reversible. Responds 204 with no body: the contact no longer exists for the API (its GET responds 404). 409 contact_in_use if anything still uses the contact — orders, projects (also as their contact person), quotes, invoices, proformas, credit notes, sales receipts, supplier invoices, contracts, subrents (as provider), purchase orders (as supplier), SEPA mandates, receipts or consignments —: nothing is deleted and errors[] carries one entry per type that uses it (path is the type, count how many). Archive it instead with PATCH /api/v1/contacts/{contactId} and status: archived. 404 if the contact does not exist or belongs to another account.

Arguments

contactIdstringRequired

Contact identifier.

Limits: min length 1

idempotencyKeystring

Idempotency key chosen by the client (a UUID is recommended). Repeating the same key with the same arguments within 24 h returns the stored response without executing again; with different arguments it responds 422. It is the safe way to retry after a network failure.

Limits: min length 1, max length 255

ifMatchstring

Optimistic locking: the meta.etag you got from the detail read of this resource (or "*"). If the resource changed since, the call fails with 412 precondition_failed before writing anything; read it again and retry. Omit it to write unconditionally.

Limits: min length 1

Result

On success the result carries structuredContent with data and meta. These are the attributes of data.

An error is a result with isError: true and the problem in content[0].text; there is no structuredContent. See Errors.

The same operation by REST

This tool runs DELETE /api/v1/contacts/{contactId}.

  • Contacts

    Delete a contact

    Deletes the contact and everything hanging from it: its relationships with other contacts (in both directions), its notes, its files, its tasks, its payment methods and its customer portal access.

  • Guides

    Safe writes

    An assistant that can write can also write the wrong thing. Decide which tools need a person, retry without duplicating, and know what a write sets in motion.

  • Guides

    Errors

    A tool error is a result with isError: true and the problem in the first text block. Branch on its code.