---
title: "Updating a Custom Activity instance"
method: PUT
path: "/activity/custom/{id}/"
tags: ["activities.custom_activities"]
---

# Updating a Custom Activity instance

`PUT /activity/custom/{id}/`

A Custom Activity can be updated to add, change or remove any Custom Fields and to change the status between "draft" and "published".

A Custom Activity can be pinned or unpinned by setting the `pinned` field to `true` or `false` when creating or updating a Custom Activity.

Custom Fields appear in the format: `custom.{custom_field_id}`. See [Custom Fields](https://developer.close.com/api/resources/custom-fields/custom-fields-activity).

## Path parameters

- `id` string, required

## Request body

- UpdateCustomActivity
  - `activity_at` string, date-time, nullable
  - `contact_id` string, nullable
  - `pinned` boolean, nullable
  - `status` 'draft' | 'published'

## Response `200`

Successful response

- CustomActivity
  - `_type` string, required
  - `activity_at` string, date-time, nullable, required
  - `comment_summary` CommentSummary
    - `comment_count` integer, required
    - `thread_id` string, required
  - `contact_id` string, nullable, required
  - `created_by` string, nullable, required
  - `created_by_name` string, nullable
  - `custom_activity_type_id` string, required
  - `date_created` string, date-time, required
  - `date_updated` string, date-time, required
  - `id` string, required
  - `last_published_at` string, date-time, nullable, required
  - `lead_id` string, nullable, required
  - `mentions` string[], required
  - `mentions_updated_at` string, date-time, nullable, required
  - `organization_id` string, required
  - `pinned` boolean, required
  - `pinned_at` string, date-time, nullable, required
  - `source` 'ui' | 'api' | 'import' | 'clipper' | 'email' | 'suggestion' | 'segment-integration' | 'customerio-integration' | 'calendly-integration' | 'ai' | 'whatsapp' | 'webform', required
  - `status` 'draft' | 'published', required
  - `updated_by` string, nullable, required
  - `updated_by_name` string, nullable
  - `user_id` string, nullable, required
  - `user_name` string, nullable
  - `users` string[], required

## Other responses

- `400` — Bad request
- `401` — Unauthorized
- `404` — Not found

---

[API](https://skmtc.net/close/apis/close-api.md) · [All operations](https://skmtc.net/close/apis/close-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/close/close-api/revisions/0dcf3303e9d7/schema)
