<br />

Businesses can add services they provide to their Business Profile listings. This could include services provided within a store or those offered at customer locations.

> [!NOTE]
> **Note:** Predefined services listed might differ based on the category and country. They are dynamic and can change at any time.

## Eligibility and Format

Not all businesses can add services to their Business Profile listing. To check the eligibilty, check the state of `canModifyServiceList` in [Metadata](https://developers.google.com/my-business/reference/businessinformation/rest/v1/accounts.locations#Location.Metadata).

A service is represented as a [ServiceItem](https://developers.google.com/my-business/reference/businessinformation/rest/v1/accounts.locations#serviceitem), which supports the following two formats:

- [StructuredServiceItem](https://developers.google.com/my-business/reference/businessinformation/rest/v1/accounts.locations#structuredserviceitem): Google's predefined services can be represented as a `StructuredServiceItem`, which contains a `serviceTypeId`.
- [FreeFormServiceItem](https://developers.google.com/my-business/reference/businessinformation/rest/v1/accounts.locations#freeformserviceitem): To offer custom services, use a `FreeFormServiceItem` which contains a [Label](https://developers.google.com/my-business/reference/businessinformation/rest/v1/accounts.locations#Location.Label).

## Listing predefined services by category name

To search for predefined services under a category by category name, use [categories.list](https://developers.google.com/my-business/reference/businessinformation/rest/v1/categories/list). A request for all categories that includes the name `salon` in Singapore is shown in the following Request section.

### Request

The [CategoryView](https://developers.google.com/my-business/reference/businessinformation/rest/v1/CategoryView) must be set to `FULL`.
HTTP

```
GET https://mybusinessbusinessinformation.googleapis.com/v1/categories?regionCode=SG&languageCode=EN&filter=displayname=salon&view=FULL
```

### Response

The following partial response returns all supported [ServiceTypes](https://developers.google.com/my-business/reference/businessinformation/rest/v1/accounts.locations#Location.ServiceType).

```
{
    "categories": [
        {
            "name": "gcid:hair_salon",
            "displayName": "Hairdresser",
            "serviceTypes": [
                {
                    "serviceTypeId": "job_type_id:body_waxing",
                    "displayName": "Body Waxing"
                },
                {
                    "serviceTypeId": "job_type_id:hair_coloring",
                    "displayName": "Hair coloring"
                },
                {
                    "serviceTypeId": "job_type_id:hair_extensions",
                    "displayName": "Hair extensions"
                },
                {
                    "serviceTypeId": "job_type_id:hair_styling",
                    "displayName": "Hair styling"
                },
                {
                    "serviceTypeId": "job_type_id:manicures",
                    "displayName": "Manicures"
                },
                {
                    "serviceTypeId": "job_type_id:pedicures",
                    "displayName": "Pedicures"
                }
            ]
        }
}
```

## List predefined services by category ID

To search for predefined services by specific category ID, use [categories.batchGet](https://developers.google.com/my-business/reference/businessinformation/rest/v1/categories/batchGet). A request for details under the category ID `gcid:electrician` in the United States is shown in the following Request section.

### Request

The [CategoryView](https://developers.google.com/my-business/reference/businessinformation/rest/v1/CategoryView) must be set to `FULL`.
HTTP

```
GET https://mybusinessbusinessinformation.googleapis.com/v1/categories:batchGet?regionCode=US&languageCode=en&names=gcid:electrician&view=FULL
```

### Response

The response contains all supported [ServiceTypes](https://developers.google.com/my-business/reference/businessinformation/rest/v1/accounts.locations#Location.ServiceType) for `gcid:electrician`.

```
{
    "categories": [
        {
            "name": "gcid:electrician",
            "displayName": "Electrician",
            "serviceTypes": [
                {
                    "serviceTypeId": "job_type_id:construction",
                    "displayName": "Construction"
                },
                {
                    "serviceTypeId": "job_type_id:electric_car_charger",
                    "displayName": "Install electric car charger"
                },
                {
                    "serviceTypeId": "job_type_id:electrician_remodeling",
                    "displayName": "Remodeling"
                },
                {
                    "serviceTypeId": "job_type_id:general_repairs",
                    "displayName": "General repairs"
                },
                {
                    "serviceTypeId": "job_type_id:install_fan",
                    "displayName": "Install fan"
                },
                {
                    "serviceTypeId": "job_type_id:install_ground_wire",
                    "displayName": "Install ground wire"
                },
                {
                    "serviceTypeId": "job_type_id:install_light_fixtures",
                    "displayName": "Install light fixtures"
                },
                {
                    "serviceTypeId": "job_type_id:install_outdoor_lighting",
                    "displayName": "Install outdoor lighting"
                },
                {
                    "serviceTypeId": "job_type_id:install_outlets_switches",
                    "displayName": "Install outlets or switches"
                },
                {
                    "serviceTypeId": "job_type_id:install_security_system",
                    "displayName": "Install security system"
                },
                {
                    "serviceTypeId": "job_type_id:installation",
                    "displayName": "Installation"
                },
                {
                    "serviceTypeId": "job_type_id:relocate_outlets_switches",
                    "displayName": "Relocate outlets or switches"
                },
                {
                    "serviceTypeId": "job_type_id:repair_fan",
                    "displayName": "Repair fan"
                },
                {
                    "serviceTypeId": "job_type_id:repair_light_fixtures",
                    "displayName": "Repair light fixtures"
                },
                {
                    "serviceTypeId": "job_type_id:repair_outlets_switches",
                    "displayName": "Repair outlets or switches"
                },
                {
                    "serviceTypeId": "job_type_id:repair_panel",
                    "displayName": "Repair panel"
                },
                {
                    "serviceTypeId": "job_type_id:replace_upgrade_panel",
                    "displayName": "Replace or upgrade panel"
                },
                {
                    "serviceTypeId": "job_type_id:restore_power",
                    "displayName": "Restore power"
                }
            ]
        }
    ]
}
```

## List existing services in a listing

To get a current list of services, use [locations.get](https://developers.google.com/my-business/reference/businessinformation/rest/v1/locations/get) and set`readMask=serviceItems`

### Request

HTTP

```
GET https://mybusinessbusinessinformation.googleapis.com/v1/locations/{locationId}?readMask=serviceItems
```

### Response

Below is a sample response

```
{
    "serviceItems": [
        {
            "structuredServiceItem": {
                "serviceTypeId": "job_type_id:hair_coloring"
            }
        },
        {
            "isOffered": true,
            "structuredServiceItem": {
                "serviceTypeId": "job_type_id:hair_styling"
            }
        },
        {
            "isOffered": true,
            "freeFormServiceItem": {
                "categoryId": "gcid:barber_shop",
                "label": {
                    "displayName": "Student Cuts"
                }
            }
        }
    ]
}
```

## Set services for a listing

To update services, use [locations.patch](https://developers.google.com/my-business/reference/businessinformation/rest/v1/locations/patch) and `updateMask=serviceItems`. Updating individual services is not supported.

To set services with a [StructuredServiceItem](https://developers.google.com/my-business/reference/businessinformation/rest/v1/accounts.locations#structuredserviceitem) and a [FreeFormServiceItem](https://developers.google.com/my-business/reference/businessinformation/rest/v1/accounts.locations#freeformserviceitem), see the following example:

> [!IMPORTANT]
> **Important:** For StructuredServiceItems, use only services supported in [categories](https://developers.google.com/my-business/reference/businessinformation/rest/v1/categories).

HTTP

```
PATCH
https://mybusinessbusinessinformation.googleapis.com/v1/locations/{locationId}?updateMask=serviceItems
{
   "serviceItems":[
      {
         "isOffered":false,
         "structuredServiceItem":{
            "serviceTypeId":"job_type_id:hair_coloring"
         }
      },
      {
         "isOffered":true,
         "structuredServiceItem":{
            "serviceTypeId":"job_type_id:hair_styling"
         }
      },
      {
         "isOffered":true,
         "freeFormServiceItem":{
            "categoryId":"gcid:hair_salon",
            "label":{
               "displayName":"Student Cuts"
            }
         }
      }
   ]
}
```