---
title: "Update Slack Contact Rule"
method: PATCH
path: "/api/v1/identities/{agent_handle}/slack-contact-rules/{rule_id}"
tags: ["Identities"]
---

# Update Slack Contact Rule

`PATCH /api/v1/identities/{agent_handle}/slack-contact-rules/{rule_id}`

## Request

- Base URL: `https://api.inkbox.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.inkbox.ai/api/v1/identities/{agent_handle}/slack-contact-rules/{rule_id}`
- Auth: one of:
  - API key in header `X-API-Key`
  - HTTP bearer

## Path parameters

- `rule_id` string, uuid, required
- `agent_handle` string, required

## Request body

- SlackContactRuleUpdate
  - `action` 'allow' | 'block'
  - `direction` 'inbound' | 'outbound' | 'both'
  - `apply_to` 'inbound' | 'outbound', nullable

## Response `200`

Successful Response

- SlackContactRuleResponse
  - `contact` ContactResponse
    - `id` string, uuid, required
    - `organization_id` string, required
    - `preferred_name` string, nullable, required
    - `name_prefix` string, nullable, required
    - `given_name` string, nullable, required
    - `middle_name` string, nullable, required
    - `family_name` string, nullable, required
    - `name_suffix` string, nullable, required
    - `company_name` string, nullable, required
    - `job_title` string, nullable, required
    - `birthday` string, date, nullable, required
    - `notes` string, nullable, required
    - `emails` ContactEmailItem[], required
      - `value` string, email, required
      - `label` string, nullable
      - `is_primary` boolean
    - `phones` ContactPhoneItemResponse[], required
      - `value_e164` string, required
      - `label` string, nullable
      - `is_primary` boolean
    - `slack_accounts` ContactSlackAccount[]
      - `workspace_id` string, required
      - `user_id` string, required
      - `workspace_name` string, nullable
    - `websites` ContactWebsiteItem[], required
      - `url` string, required
      - `label` string, nullable
    - `dates` ContactDateItem[], required
      - `date` string, date, required
      - `label` string, required
    - `addresses` ContactAddressItem[], required
      - `street` string, nullable
      - `city` string, nullable
      - `region` string, nullable
      - `postal` string, nullable
      - `country` string, nullable
      - `label` string, nullable
    - `custom_fields` ContactCustomFieldItem[], required
      - `label` string, required
      - `value` string, required
    - `creation_source` 'manual' | 'vcard' | 'communication' | 'backfill', required
    - `review_status` 'unreviewed' | 'confirmed', required
    - `reviewed_at` string, date-time, nullable, required
    - `reviewed_by` string, nullable, required
    - `preferred_name_source` 'manual' | 'vcard' | 'provider' | 'mail_header' | 'identifier_fallback', required
    - `preferred_name_locked_at` string, date-time, nullable, required
    - `created_by_identity_id` string, uuid, nullable, required
    - `merged_into_contact_id` string, uuid, nullable, required
    - `is_auto_created` boolean, required
    - `is_confirmed` boolean, required
    - `status` 'active' | 'paused' | 'deleted', required
    - `created_at` string, date-time, required
    - `updated_at` string, date-time, required
    - `access` ContactAccessResponse[]: Raw ``contact_access`` rows for this contact, inlined so the console can skip a follow-up ``GET /contacts/{id}/access`` per row. Either a single wildcard row (``identity_id=null``), an explicit per-identity list, or empty when the contact has zero legacy rows. These rows do not determine communication permissions. Always populated by the list and single-contact read paths; empty does not mean 'not loaded'.
      - `id` string, uuid, required
      - `contact_id` string, uuid, required
      - `identity_id` string, uuid, nullable, required
      - `created_at` string, date-time, required
  - `id` string, uuid, required
  - `agent_identity_id` string, uuid, required
  - `action` 'allow' | 'block', required
  - `match_type` 'exact_user' | 'workspace', required
  - `match_target` string, required
  - `direction` 'inbound' | 'outbound' | 'both', required
  - `status` 'active' | 'paused' | 'deleted', required
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, required

## Other responses

- `422`: Validation Error
- `4XX`: Client error with Support Agent information.
- `5XX`: Server error with Support Agent information.

## Changes

- **2026-10-05** `6218d79dde9a`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/inkbox/apis/inkbox-api/changes/api/v1/identities/:agent_handle/slack-contact-rules/:rule_id/patch.md)

---

[API](https://skmtc.dev/inkbox/apis/inkbox-api.md) - [All operations](https://skmtc.dev/inkbox/apis/inkbox-api/llms.txt) - [OpenAPI document](https://skmtc.dev/inkbox/apis/inkbox-api/revisions/7e848337e8bf?raw)
