> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://mailchimp.com/developer/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://mailchimp.com/developer/_mcp/server.

# Update segment

PATCH https://api.mailchimp.com/3.0/lists/{list_id}/segments/{segment_id}
Content-Type: application/json

Update a specific segment in a list.

Reference: https://mailchimp.com/developer/marketing/api/lists/update-segment

## Authentication

- `Authorization` header (bearer token, required) — Authorization using a Mailchimp API key (a.k.a. Bearer token)
- `Authorization` header (bearer token, required) — Authorization using OAuth

## Request

### Path parameters

- `list_id` (string, required) — The unique ID for the list.
- `segment_id` (string, required) — The unique id for the segment.

### Body (application/json)

This endpoint expects an object.

- `name` (string, optional) — The name of the segment.
- `options` (30ListsListIdSegmentsSegmentIdPatchRequestBodyContentApplicationJsonSchemaOptions, optional) — The [conditions of the segment](https://mailchimp.com/help/save-and-manage-segments/). Static and fuzzy segments don't have conditions.
- `static_segment` (list of string, optional) — An array of emails to be used for a static segment. Any emails provided that are not present on the list will be ignored. Passing an empty array for an existing static segment will reset that segment and remove all members. This field cannot be provided with the `options` field.

## Response

### 200

- `_links` (list of ListLinksItems, optional) — A list of link types and descriptions for the API schema documents.
- `created_at` (datetime, optional) — The date and time the segment was created in ISO 8601 format.
- `id` (integer, optional) — The unique id for the segment.
- `list_id` (string, optional) — The list id.
- `member_count` (integer, optional) — The number of active subscribers currently included in the segment.
- `name` (string, optional) — The name of the segment.
- `options` (ListOptions, optional) — The conditions of the segment. Static segments (tags) and fuzzy segments don't have conditions.
- `type` (enum, optional) — The type of segment. Static segments are now known as tags. Learn more about [tags](https://mailchimp.com/help/getting-started-tags?utm_source=mc-api&utm_medium=docs&utm_campaign=apidocs).
  - Allowed values: `saved`, `static`, `fuzzy`
- `updated_at` (datetime, optional) — The date and time the segment was last updated in ISO 8601 format.

## Types

### 30ListsListIdSegmentsSegmentIdPatchRequestBodyContentApplicationJsonSchemaOptions

The [conditions of the segment](https://mailchimp.com/help/save-and-manage-segments/). Static and fuzzy segments don't have conditions.

- `conditions` (list of SegmentTypeItems, optional) — Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).
- `match` (enum, optional) — Match type.
  - Allowed values: `any`, `all`

### ListLinksItems

This object represents a link from the resource where it is found to another resource or action that may be performed.

- `href` (string, optional) — This property contains a fully-qualified URL that can be called to retrieve the linked resource or perform the linked action.
- `method` (enum, optional) — The HTTP method that should be used when accessing the URL defined in 'href'.
  - Allowed values: `GET`, `POST`, `PUT`, `PATCH`, `DELETE`, `OPTIONS`, `HEAD`
- `rel` (string, optional) — As with an HTML 'rel' attribute, this describes the type of link.
- `schema` (string, optional) — For HTTP methods that can receive bodies (POST and PUT), this is a URL representing the schema that the body should conform to.
- `targetSchema` (string, optional) — For GETs, this is a URL representing the schema that the response should conform to.

### ListOptions

The conditions of the segment. Static segments (tags) and fuzzy segments don't have conditions.

- `conditions` (list of SegmentTypeItems, optional) — Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).
- `match` (enum, optional) — Match type.
  - Allowed values: `any`, `all`

### SegmentTypeItems

### Aim Segment

Segment by interaction with a specific campaign.

- `condition_type` (enum, optional)
  - Allowed values: `Aim`
- `field` (enum, optional) — Segment by interaction with a specific campaign.
  - Allowed values: `aim`
- `op` (enum, optional) — The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn't open, didn't click, or was not sent.
  - Allowed values: `open`, `click`, `sent`, `noopen`, `noclick`, `nosent`
- `value` (string, optional) — Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.

### Automation Segment

Segment by interaction with an Automation workflow.

- `field` (enum, required) — Segment by interaction with an Automation workflow.
  - Allowed values: `automation`
- `op` (enum, required) — The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.
  - Allowed values: `started`, `completed`, `not_started`, `not_completed`
- `value` (string, required) — The web id for the automation workflow to segment against.
- `condition_type` (enum, optional)
  - Allowed values: `Automation`

### Poll Activity Segment

Segment by poll activity.

- `field` (enum, required) — Segment by poll activity.
  - Allowed values: `poll`
- `op` (enum, required) — Members have/have not interacted with a specific poll in a Mailchimp email.
  - Allowed values: `member`, `notmember`
- `value` (double, required) — The id for the poll.
- `condition_type` (enum, optional)
  - Allowed values: `CampaignPoll`

### Conversation Segment

Segment by interaction with a campaign via Conversations.

- `field` (enum, required) — Segment by interaction with a campaign via Conversations.
  - Allowed values: `conversation`
- `op` (enum, required) — The status of a member's interaction with a conversation. One of the following: has replied or has not replied.
  - Allowed values: `member`, `notmember`
- `value` (string, required) — The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.
- `condition_type` (enum, optional)
  - Allowed values: `Conversation`

### Date Segment

Segment by a specific date field.

- `field` (enum, required) — The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.
  - Allowed values: `timestamp_opt`, `info_changed`, `ecomm_date`
- `op` (enum, required) — When the event took place: Before, after, is a specific date, is not a specific date, is blank, or is not blank.
  - Allowed values: `greater`, `less`, `is`, `not`, `blank`, `blank_not`, `within`, `notwithin`
- `value` (string, required) — What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.
- `condition_type` (enum, optional)
  - Allowed values: `Date`
- `extra` (string, optional) — When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.

### Email Client Segment

Segment by use of a particular email client.

- `field` (enum, required) — Segment by use of a particular email client.
  - Allowed values: `email_client`
- `op` (enum, required) — The operation to determine whether we select clients that match the value, or clients that do not match the value.
  - Allowed values: `client_is`, `client_not`
- `value` (string, required) — The name of the email client.
- `condition_type` (enum, optional)
  - Allowed values: `EmailClient`

### Language Segment

Segment by language.

- `field` (enum, required) — Segmenting based off of a subscriber's language.
  - Allowed values: `language`
- `op` (enum, required) — Whether the member's language is or is not set to a specific language.
  - Allowed values: `is`, `not`
- `value` (string, required) — A two-letter language identifier.
- `condition_type` (enum, optional)
  - Allowed values: `Language`

### Member Rating Segment

Segment by member rating.

- `field` (enum, required) — Segment by member rating.
  - Allowed values: `rating`
- `op` (enum, required) — Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.
  - Allowed values: `is`, `not`, `greater`, `less`
- `value` (SegmentTypeItemsOneOf7Value, required)
- `condition_type` (enum, optional)
  - Allowed values: `MemberRating`

### Signup Source Segment

Segment by signup source.

- `condition_type` (enum, required)
  - Allowed values: `SignupSource`
- `field` (enum, required)
  - Allowed values: `source`
- `op` (enum, required) — Whether the member's signup source was/was not a particular value.
  - Allowed values: `source_is`, `source_not`
- `value` (string, optional) — The signup source.

### Survey Monkey Segment

Segment by interaction with a SurveyMonkey survey.

- `field` (enum, required) — Segment by interaction with a SurveyMonkey survey.
  - Allowed values: `survey_monkey`
- `op` (enum, required) — The status of the member with regard to the survey.One of the following: has started the survey, has completed the survey, has not started the survey, or has not completed the survey.
  - Allowed values: `started`, `completed`, `not_started`, `not_completed`
- `value` (string, required) — The unique ID of the survey monkey survey.
- `condition_type` (enum, optional)
  - Allowed values: `SurveyMonkey`

### VIP Segment

Segment by VIP status.

- `field` (enum, required) — Segment by VIP status.
  - Allowed values: `gmonkey`
- `op` (enum, required) — Whether the member is or is not marked as VIP.
  - Allowed values: `member`, `notmember`
- `condition_type` (enum, optional)
  - Allowed values: `VIP`

### Interests Segment

Segment by an interest group merge field.

- `condition_type` (enum, optional)
  - Allowed values: `Interests`
- `field` (string, optional) — Segmenting based on interest group information. This should start with 'interests-' followed by the grouping id. Ex. 'interests-123'.
- `op` (enum, optional) — Whether the member is a part of one, all, or none of the groups.
  - Allowed values: `interestcontains`, `interestcontainsall`, `interestnotcontains`
- `value` (list of string, optional) — An array containing strings, each representing a group id.

### Ecommerce Category Segment

Segment by purchases in specific items or categories.

- `condition_type` (enum, optional)
  - Allowed values: `EcommCategory`
- `field` (enum, optional) — Segment by purchases in specific items or categories.
  - Allowed values: `ecomm_cat`, `ecomm_prod`
- `op` (enum, optional) — A member who has purchased from a category/specific item that is/is not a specific name, where the category/item name contains/doesn't contain a specific phrase or string, or a category/item name that starts/ends with a string.
  - Allowed values: `is`, `not`, `contains`, `notcontain`, `starts`, `ends`
- `value` (string, optional) — The ecommerce category/item information.

### Ecommerce Number Segment

Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.

- `field` (enum, required) — Segment by average spent total, number of orders, total number of products purchased, or average number of products per order.
  - Allowed values: `ecomm_spent_avg`, `ecomm_orders`, `ecomm_prod_all`, `ecomm_avg_ord`
- `op` (enum, required) — Members who have spent exactly, have not spent exactly, spent more, or spent less than the segment value.
  - Allowed values: `is`, `not`, `greater`, `less`
- `value` (SegmentTypeItemsOneOf13Value, required)
- `condition_type` (enum, optional)
  - Allowed values: `EcommNumber`

### Ecommerce Purchased Segment

Segment by whether someone has purchased anything.

- `condition_type` (enum, optional)
  - Allowed values: `EcommPurchased`
- `field` (enum, optional) — Segment by whether someone has purchased anything.
  - Allowed values: `ecomm_purchased`
- `op` (enum, optional) — Members who have have ('member') or have not ('notmember') purchased.
  - Allowed values: `member`, `notmember`

### Ecommerce Spent Segment

Segment by amount spent on a single order or across all orders.

- `condition_type` (enum, optional)
  - Allowed values: `EcommSpent`
- `field` (enum, optional) — Segment by amount spent on a single order or across all orders.
  - Allowed values: `ecomm_spent_one`, `ecomm_spent_all`
- `op` (enum, optional) — Members who have spent 'more' or 'less' than then specified value.
  - Allowed values: `greater`, `less`
- `value` (SegmentTypeItemsOneOf15Value, optional)

### Ecommerce Purchased Store Segment

Segment by purchases from a specific store.

- `condition_type` (enum, optional)
  - Allowed values: `EcommStore`
- `field` (enum, optional) — Segment by purchases from a specific store.
  - Allowed values: `ecomm_store`
- `op` (enum, optional) — Members who have or have not purchased from a specific store.
  - Allowed values: `is`, `not`
- `value` (string, optional) — The store id to segment against.

### Goal Activity Segment

Segment by Goal activity.

- `field` (enum, required) — Segment by Goal activity.
  - Allowed values: `goal`
- `op` (enum, required) — Whether the website URL is/not exactly, contains/doesn't contain, starts with/ends with a string.
  - Allowed values: `is`, `goal_not`, `contains`, `goal_notcontain`, `starts`, `ends`
- `value` (string, required) — The URL to check Goal activity against.
- `condition_type` (enum, optional)
  - Allowed values: `GoalActivity`

### Goal Timestamp Segment

Segment by most recent interaction with a website.

- `field` (enum, required) — Segment by most recent interaction with a website.
  - Allowed values: `goal_last_visited`
- `op` (enum, required) — Whether the website activity happened after, before, or at a given timestamp.
  - Allowed values: `greater`, `less`, `is`
- `value` (string, required) — The date to check Goal activity against.
- `condition_type` (enum, optional)
  - Allowed values: `GoalTimestamp`

### Similar Subscribers Segment Member Segment

Segment by similar subscribers.

- `field` (enum, required) — Segment by similar subscribers.
  - Allowed values: `fuzzy_segment`
- `op` (enum, required) — Members who are/are not apart of a 'similar subscribers' segment.
  - Allowed values: `fuzzy_is`, `fuzzy_not`
- `value` (SegmentTypeItemsOneOf19Value, required)
- `condition_type` (enum, optional)
  - Allowed values: `FuzzySegment`

### Static Segment Member Segment

Segment by a given static segment.

- `field` (enum, required) — Segment by a given static segment.
  - Allowed values: `static_segment`
- `op` (enum, required) — Members who are/are not apart of a static segment.
  - Allowed values: `static_is`, `static_not`
- `value` (SegmentTypeItemsOneOf20Value, required)
- `condition_type` (enum, optional)
  - Allowed values: `StaticSegment`

### Location-Based Segment

Segment by a specific country or US state.

- `field` (enum, required) — Segmenting subscribers who are within a specific location.
  - Allowed values: `ipgeo`
- `op` (enum, required) — Segment members who are within a specific country or US state.
  - Allowed values: `ipgeocountry`, `ipgeonotcountry`, `ipgeostate`, `ipgeonotstate`
- `value` (string, required) — The two-letter country code or US state abbreviation.
- `condition_type` (enum, optional)
  - Allowed values: `IPGeoCountryState`

### Geolocation Segment

Segment by a specific geographic region.

- `addr` (string, required) — The address of the target location.
- `field` (enum, required) — Segmenting subscribers who are within a specific location.
  - Allowed values: `ipgeo`
- `lat` (string, required) — The latitude of the target location.
- `lng` (string, required) — The longitude of the target location.
- `op` (enum, required) — Segment members who are within a specific geographic region.
  - Allowed values: `ipgeoin`, `ipgeonotin`
- `value` (integer, required) — The radius of the target location.
- `condition_type` (enum, optional)
  - Allowed values: `IPGeoIn`

### US Zip Code Segment

Segment by a specific US ZIP code.

- `extra` (integer, required) — The zip code to segment against.
- `field` (enum, required) — Segmenting subscribers who are within a specific location.
  - Allowed values: `ipgeo`
- `op` (enum, required) — Segment members who are within a specific US zip code.
  - Allowed values: `ipgeoinzip`
- `value` (integer, required) — The radius of the target location.
- `condition_type` (enum, optional)
  - Allowed values: `IPGeoInZip`

### Unknown Location-Based Segment

Segment members whose location information is unknown.

- `field` (enum, required) — Segmenting subscribers who are within a specific location.
  - Allowed values: `ipgeo`
- `op` (enum, required) — Segment members for which location information is unknown.
  - Allowed values: `ipgeounknown`
- `condition_type` (enum, optional)
  - Allowed values: `IPGeoUnknown`

### Zip Code Location-Based Segment

Segment by a specific US ZIP code.

- `field` (enum, required) — Segmenting subscribers who are within a specific location.
  - Allowed values: `ipgeo`
- `op` (enum, required) — Segment members who are/are not within a specific US zip code.
  - Allowed values: `ipgeoiszip`, `ipgeonotzip`
- `value` (integer, required) — The 5-digit zip code.
- `condition_type` (enum, optional)
  - Allowed values: `IPGeoZip`

### Social Profiles Age Segment

Segment by age ranges in Social Profiles data.

- `field` (enum, required) — Segment by age ranges in Social Profiles data.
  - Allowed values: `social_age`
- `op` (enum, required) — Members who are/not the exact criteria listed.
  - Allowed values: `is`, `not`
- `value` (enum, required) — The age range to segment.
  - Allowed values: `18-24`, `25-34`, `35-54`, `55+`
- `condition_type` (enum, optional)
  - Allowed values: `SocialAge`

### Social Profiles Gender Segment

Segment by listed gender in Social Profiles data.

- `field` (enum, required) — Segment by listed gender in Social Profiles data.
  - Allowed values: `social_gender`
- `op` (enum, required) — Members who are/not the exact criteria listed.
  - Allowed values: `is`, `not`
- `value` (enum, required) — The Social Profiles gender to segment.
  - Allowed values: `male`, `female`
- `condition_type` (enum, optional)
  - Allowed values: `SocialGender`

### Social Profiles Influence Segment

Segment by influence rating in Social Profiles data.

- `field` (enum, required) — Segment by influence rating in Social Profiles data.
  - Allowed values: `social_influence`
- `op` (enum, required) — Members who have a rating that is/not or greater/less than the rating provided.
  - Allowed values: `is`, `not`, `greater`, `less`
- `value` (double, required) — The Social Profiles influence rating to segment.
- `condition_type` (enum, optional)
  - Allowed values: `SocialInfluence`

### Social Profiles Social Network Segment

Segment by social network in Social Profiles data.

- `field` (enum, required) — Segment by social network in Social Profiles data.
  - Allowed values: `social_network`
- `op` (enum, required) — Members who are/not on a given social network.
  - Allowed values: `member`, `notmember`
- `value` (enum, required) — The social network to segment against.
  - Allowed values: `twitter`, `facebook`, `linkedin`, `flickr`, `foursquare`, `lastfm`, `myspace`, `quora`, `vimeo`, `yelp`, `youtube`
- `condition_type` (enum, optional)
  - Allowed values: `SocialNetworkMember`

### Social Profiles Social Network Follow Segment

Segment by social network in Social Profiles data.

- `field` (enum, required) — Segment by social network in Social Profiles data.
  - Allowed values: `social_network`
- `op` (enum, required) — Members who are/not following a linked account on a given social network.
  - Allowed values: `follow`, `notfollow`
- `value` (enum, required) — The social network to segment against.
  - Allowed values: `twitter_follow`
- `condition_type` (enum, optional)
  - Allowed values: `SocialNetworkFollow`

### Address Merge Field Segment

Segment by an address-type merge field.

- `field` (string, required) — An address-type merge field to segment.
- `op` (enum, required) — Whether the member's address merge field contains/does not contain a value or is/is not blank.
  - Allowed values: `contains`, `notcontain`, `blank`, `blank_not`
- `condition_type` (enum, optional)
  - Allowed values: `AddressMerge`
- `value` (string, optional) — The value to segment a text merge field with.

### Address/Zip Merge Field Segment

Segment by an address-type merge field within a given distance.

- `extra` (string, required) — The city or the zip being used to segment against.
- `field` (string, required) — An address or zip-type merge field to segment.
- `op` (enum, required) — Whether the member's address merge field is within a given distance from a city or zip.
  - Allowed values: `geoin`
- `value` (string, required) — The distance from the city/zip.
- `condition_type` (enum, optional)
  - Allowed values: `ZipMerge`

### Birthday Merge Field Segment

Segment by a contact's birthday.

- `field` (string, required) — A date merge field to segment.
- `op` (enum, required) — Whether the member's birthday merge information is/is not a certain date or is/is not blank.
  - Allowed values: `is`, `not`, `blank`, `blank_not`
- `condition_type` (enum, optional)
  - Allowed values: `BirthdayMerge`
- `value` (string, optional) — A date to segment against (mm/dd).

### Date Merge Field Segment

Segment by a given date merge field.

- `field` (string, required) — A date merge field to segment.
- `op` (enum, required) — Whether the member's merge information is/is not, is greater/less than a value or is/is not blank.
  - Allowed values: `is`, `not`, `less`, `blank`, `blank_not`, `greater`
- `condition_type` (enum, optional)
  - Allowed values: `DateMerge`
- `value` (string, optional) — A date to segment against.

### Dropdown/Radio Merge Field Segment

An individual segment condition

- `field` (string, required) — A merge field to segment.
- `op` (enum, required) — Whether the member's merge information is/is not a value or is/is not blank.
  - Allowed values: `is`, `not`, `blank`, `blank_not`, `notcontain`, `contains`
- `condition_type` (enum, optional)
  - Allowed values: `SelectMerge`
- `value` (string, optional) — The value to segment a text merge field with.

### Text or Number Merge Field Segment

Segment by a given text or number merge field.

- `field` (string, required) — A text or number merge field to segment.
- `op` (enum, required) — Whether the member's merge information is/is not, contains/does not contain, starts/ends with, or is greater/less than a value
  - Allowed values: `is`, `not`, `contains`, `notcontain`, `starts`, `ends`, `greater`, `less`, `blank`, `blank_not`
- `condition_type` (enum, optional)
  - Allowed values: `TextMerge`
- `value` (string, optional) — The value to segment a text or number merge field with.

### Email Segment

Segment by email address.

- `field` (enum, required) — Segmenting based off of a subscriber's email address.
  - Allowed values: `merge0`, `EMAIL`
- `op` (enum, required) — Whether the email address is/not exactly, contains/doesn't contain, starts/ends with a string.
  - Allowed values: `is`, `not`, `contains`, `notcontain`, `starts`, `ends`, `greater`, `less`
- `condition_type` (enum, optional)
  - Allowed values: `EmailAddress`
- `value` (string, optional) — The value to compare the email against.

### Predicted Gender Segment

Segment by predicted gender.

- `field` (enum, required) — Segment by predicted gender.
  - Allowed values: `predicted_gender`
- `op` (enum, required) — Members who are/not the exact criteria listed.
  - Allowed values: `is`, `not`
- `value` (enum, required) — The predicted gender to segment.
  - Allowed values: `male`, `female`
- `condition_type` (enum, optional)
  - Allowed values: `PredictedGender`

### Predicted Age Segment

Segment by predicted age.

- `field` (enum, required) — Segment by predicted age.
  - Allowed values: `predicted_age_range`
- `op` (enum, required) — Members who are/not the exact criteria listed.
  - Allowed values: `is`
- `value` (enum, required) — The predicted age to segment.
  - Allowed values: `18-24`, `25-34`, `35-44`, `45-54`, `55-64`, `65+`
- `condition_type` (enum, optional)
  - Allowed values: `PredictedAge`

### New Subscribers Prebuilt Segment

Segment by when people subscribed.

- `condition_type` (enum, optional)
  - Allowed values: `NewSubscribers`
- `field` (enum, optional) — Segment by when people subscribed.
  - Allowed values: `timestamp_opt`
- `op` (enum, optional) — Whe the event took place, namely within a time frame.
  - Allowed values: `date_within`
- `value` (string, optional) — What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.

### SegmentTypeItemsOneOf7Value

### SegmentTypeItemsOneOf13Value

### SegmentTypeItemsOneOf15Value

### SegmentTypeItemsOneOf19Value

### SegmentTypeItemsOneOf20Value

## Examples

**Request**

```json
{}
```

**Response**

```json
{
  "_links": [
    {
      "href": "string",
      "method": "GET",
      "rel": "string",
      "schema": "string",
      "targetSchema": "string"
    }
  ],
  "created_at": "2024-01-15T09:30:00Z",
  "id": 1,
  "list_id": "string",
  "member_count": 1,
  "name": "string",
  "options": {
    "conditions": [
      {
        "condition_type": "Aim",
        "field": "aim",
        "op": "open",
        "value": "any"
      }
    ],
    "match": "any"
  },
  "type": "saved",
  "updated_at": "2024-01-15T09:30:00Z"
}
```

**SDK Code**

```python
import requests

url = "https://api.mailchimp.com/3.0/lists/list_id/segments/segment_id"

payload = {}
headers = {
    "Authorization": "Bearer <token>",
    "Content-Type": "application/json"
}

response = requests.patch(url, json=payload, headers=headers)

print(response.json())
```

```javascript
const url = 'https://api.mailchimp.com/3.0/lists/list_id/segments/segment_id';
const options = {
  method: 'PATCH',
  headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
  body: '{}'
};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go
package main

import (
	"fmt"
	"strings"
	"net/http"
	"io"
)

func main() {

	url := "https://api.mailchimp.com/3.0/lists/list_id/segments/segment_id"

	payload := strings.NewReader("{}")

	req, _ := http.NewRequest("PATCH", url, payload)

	req.Header.Add("Authorization", "Bearer <token>")
	req.Header.Add("Content-Type", "application/json")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby
require 'uri'
require 'net/http'

url = URI("https://api.mailchimp.com/3.0/lists/list_id/segments/segment_id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{}"

response = http.request(request)
puts response.read_body
```

```java
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.patch("https://api.mailchimp.com/3.0/lists/list_id/segments/segment_id")
  .header("Authorization", "Bearer <token>")
  .header("Content-Type", "application/json")
  .body("{}")
  .asString();
```

```php
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('PATCH', 'https://api.mailchimp.com/3.0/lists/list_id/segments/segment_id', [
  'body' => '{}',
  'headers' => [
    'Authorization' => 'Bearer <token>',
    'Content-Type' => 'application/json',
  ],
]);

echo $response->getBody();
```

```csharp
using RestSharp;

var client = new RestClient("https://api.mailchimp.com/3.0/lists/list_id/segments/segment_id");
var request = new RestRequest(Method.PATCH);
request.AddHeader("Authorization", "Bearer <token>");
request.AddHeader("Content-Type", "application/json");
request.AddParameter("application/json", "{}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
```

```swift
import Foundation

let headers = [
  "Authorization": "Bearer <token>",
  "Content-Type": "application/json"
]
let parameters = [] as [String : Any]

let postData = JSONSerialization.data(withJSONObject: parameters, options: [])

let request = NSMutableURLRequest(url: NSURL(string: "https://api.mailchimp.com/3.0/lists/list_id/segments/segment_id")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "PATCH"
request.allHTTPHeaderFields = headers
request.httpBody = postData as Data

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```