---
schema_version: "1"
id: bc63442bae810c508f69b030d24159aa188beb55642aa6e13b481fdee51a10a2
title: Overview
collection: developer
version: current
locale: en-us
portal_url: https://docs.salesforce.com/developer/current/en-us/industries-integrations/comms/guides/TMF629/TMF629use-cases.md
canonical_url: https://developer.salesforce.com/docs/industries/communications/guide/TMF629use-cases.html
source_site: developer.salesforce.com
content_type: documentation
content_hash: fc45e9605c27db768a64b75e9bbfe6206c807c5f28bde5a5051e97d5a64fdc98
products:
  - Communications Cloud TM Forum API
  - Industries Integrations
---
# Overview

- The TMF629 API provides a standardized mechanism for customer and customer account management, such as creation, update, retrieval, and deletion of customers.
<!--- Following block diagram provides a high-level overview of how the various components are involved in handling TMF 629 API operations (GET, POST, PATCH, and DELETE).
  ![TMF629 Components](https://developer.salesforce.com/media/TMF629.png "TMF629 Components")-->
- Using the TMF629 API you can perform the following operations on customer account.
  - Retrieve the list of customer accounts from the system
  - Get the customer account details
  - Create a customer account
  - Update an existing customer account
  - Delete an existing customer account.

In general, you can consider the various [use cases](#use-cases) listed based on the operation you want to perform.

**important:** Starting from the Winter ’27 release, only the Direct Access option will be supported. The MuleSoft gateway option will be deprecated, and customers must update their integrations to use the Connect/Apex REST endpoints for continued access to the inbound APIs.

## Assumptions

It is assumed that you have completed the following.

- Ensuring that the required licenses and data packs are installed.


**NOTE:**

- For mandatory fields and resource mappings, refer to [TMF629 Resource Mappings](https://developer.salesforce.com/docs/industries/communications/Resource_mappings/tmf629_resource_mapping.md).

## Use Cases

| I want to <div style="width:290px"></div>                                                                                                                                         | Request Type                                                  | Example URL                                                                                                                                                                                              |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Retrieve and display details of a particular customer account.                                                                                                                    | [GET by ID](#get-by-id)                                       | _{{orgendpoint}}/services/data/{{version}}/connect/comms/customermanagement/v4/customer/{ID}<br>_<br>**NOTE:**<br>For invalid customer ID, you will receive HTTP 404 error.                              |
| Based on the provided field values, retrieve and display details of customer accounts.                                                                                            | [GET with Fields](#get-with-fields)                           | _{{orgendpoint}}/services/data/{{version}}/connect/comms/customermanagement/v4/customer?fields=name_<br><br>**NOTE:**<br>The requested fields will be part of output, if they have value.                |
| List all the customer accounts present in the system.                                                                                                                             | [GET List](#get-list)                                         | _{{orgendpoint}}/services/data/{{version}}/connect/comms/customermanagement/v4/customer_                                                                                                                 |
| List customer account details present in the system based on the filter applied.                                                                                                  | [GET List with Filtering](#get-list-with-filtering)           | _{{orgendpoint}}/services/data/{{version}}/connect/comms/customermanagement/v4/customer?name=Edge Communications_<br><br>**NOTE:**<br>The requested fields will be part of output, if they have value.   |
| List customer accounts based on the name, limit the number of customer accounts to a maximum of specified limit, and<br>starts the results display from page specified by offset. | [GET List by limit and offset](#get-list-by-limit-and-offset) | _{{orgendpoint}}/services/data/{{version}}/connect/comms/customermanagement/v4/customer?fields=name&pageLimit=2&offset=70_<br>                                                                           |
| Create a new customer account by providing the required details.                                                                                                                  | [POST](#post)                                                 | _{{orgendpoint}}/services/data/{{version}}/connect/comms/customermanagement/v4/customer<br>_<br>**NOTE:**<br>A new customer account gets created based on the values mentioned for the mandatory fields. |
| Update details of particular customer account.                                                                                                                                    | [PATCH](#patch)                                               | _{{orgendpoint}}/services/data/{{version}}/connect/comms/customermanagement/v4/customer/{ID}_                                                                                                            |
| Delete a customer account.                                                                                                                                                        | [DELETE](#delete)                                             | _{{orgendpoint}}/services/data/{{version}}/connect/comms/customermanagement/v4/customer/{ID}_                                                                                                            |

### GET by ID

Consider you want to retrieve details of a particular customer account.

#### Sample URL

`https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v60.0/connect/comms/customermanagement/v4/customer/{ID}`

#### Sample Response

```
{
    "account": [
        {
            "description": "Chain of hotels and resorts across the US, UK, Eastern Europe, Japan, and SE Asia.",
            "href": "/services/data/v60.0/sobjects/account/001xx000003GYdPAAW",
            "id": "001xx000003GYdPAAW",
            "name": "Grand Hotels &amp; Resorts Ltd",
            "referredType": "Billing Account"
        }
    ],
    "agreement": [
        {
            "href": "/services/data/v60.0/sobjects/contract/800xx000000bna5AAA",
            "id": "800xx000000bna5AAA",
            "name": "Contract Of Legal Issue"
        }
    ],
    "engagedParty":
        {
            "href": "/services/data/v60.0/sobjects/contact/003xx000004WhECAA0",
            "id": "003xx000004WhECAA0",
            "name": "Rose Gonzalez",
            "role": "Individual"
        },
    "href": "/connect/comms/openapi/customermanagement/customer/001xx000003GYdLAAW",
    "id": "001xx000003GYdLAAW",
    "name": "Edge Communications"
}
```

### GET with Fields

Consider you want to retrieve details of the customer account and get the following details in the output.

- id
- name

#### Sample URL

`https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v60.0/connect/comms/customermanagement/v4/customer?fields=name`

#### Sample Response

```
[
    {
        "href": "/connect/comms/openapi/customermanagement/customer/001xx000003GYdLAAX",
        "id": "001xx000003GYdLAAX",
        "name": "Pyramid Construction Inc."
    }, {
        "href": "/connect/comms/openapi/customermanagement/customer/001xx000003GYdLAAW",
        "id": "001xx000003GYdLAAW",
        "name": "Edge Communications"
    }
]
```

### GET List

Consider there are multiple customer accounts in the system and you want to list all of them.

#### Sample URL

`https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v60.0/connect/comms/customermanagement/v4/customer`

#### Sample Response

```
[
    {
        "account": [
            {
                "description": "US, UK, Eastern Europe, Japan, and SE Asia.",
                "href": "/services/data/v60.0/sobjects/account/001xx000003GYdPAAE",
                "id": "001xx000003GYdPAAE",
                "name": "Grand Hotels",
                "referredType": "Billing Account"
            }
        ],
        "agreement": [
            {
                "href": "/services/data/v60.0/sobjects/contract/800xx000000bna5AAA",
                "id": "800xx000000bna5AAA",
                "name": "Contract Of Legal Issue"
            }
        ],
        "engagedParty":
            {
                "href": "/services/data/v60.0/sobjects/contact/003xx000004WhECAA0",
                "id": "003xx000004WhECAA0",
                "name": "Rose Gonzalez",
                "role": "Individual"
            },
        "href": "/connect/comms/openapi/customermanagement/customer/001xx000003GYdLAAX",
        "id": "001xx000003GYdLAAX",
        "name": "Pyramid Construction Inc."
    },
    {
        "account": [
            {
                "description": "Chain of hotels and resorts across the US, UK, Eastern Europe, Japan, and SE Asia.",
                "href": "/services/data/v60.0/sobjects/account/001xx000003GYdPAAW",
                "id": "001xx000003GYdPAAW",
                "name": "Grand Hotels &amp; Resorts Ltd",
                "referredType": "Billing Account"
            }
        ],
        "agreement": [
            {
                "href": "/services/data/v60.0/sobjects/contract/800xx000000bna5AAA",
                "id": "800xx000000bna5AAA",
                "name": "Contract Of Legal Issue"
            }
        ],
        "engagedParty":
            {
                "href": "/services/data/v60.0/sobjects/contact/003xx000004WhECAA0",
                "id": "003xx000004WhECAA0",
                "name": "Rose Gonzalez",
                "role": "Individual"
            },
        "href": "/connect/comms/openapi/customermanagement/customer/001xx000003GYdLAAW",
        "id": "001xx000003GYdLAAW",
        "name": "Edge Communications"
    }
]
```

### GET List with Filtering

Consider you want to retrieve all the customer accounts present in the system with applied filter values.

#### Sample URL

`https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v60.0/connect/comms/customermanagement/v4/customer?name=Edge Communications`

#### Sample Response

```
[

    {
        "account": [
            {
                "description": "Chain of hotels and resorts across the US, UK, Eastern Europe, Japan, and SE Asia.",
                "href": "/services/data/v60.0/sobjects/account/001xx000003GYdPAAW",
                "id": "001xx000003GYdPAAW",
                "name": "Grand Hotels &amp; Resorts Ltd",
                "referredType": "Billing Account"
            }
        ],
        "agreement": [
            {
                "href": "/services/data/v60.0/sobjects/contract/800xx000000bna5AAA",
                "id": "800xx000000bna5AAA",
                "name": "Contract Of Legal Issue"
            }
        ],
        "engagedParty":
            {
                "href": "/services/data/v60.0/sobjects/contact/003xx000004WhECAA0",
                "id": "003xx000004WhECAA0",
                "name": "Rose Gonzalez",
                "role": "Individual"
            },
        "href": "/connect/comms/openapi/customermanagement/customer/001xx000003GYdLAAW",
        "id": "001xx000003GYdLAAW",
        "name": "Edge Communications"
    }
]
```

### GET List by limit and offset

Consider you want to

- Retrieve a list of customer accounts
- Limit the number of customers to a maximum of specified limit
- Start the results display from page specified by offset

#### Sample URL

`https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v60.0/connect/comms/customermanagement/v4/customer?fields=name&pageLimit=2&offset=70`

**NOTE:** If there are multiple quotes, the above pagination query - limit=2&offset=70 will start display from page 70 and will have 2 records.

#### Sample Response

```
[
    {
        "href": "/connect/comms/openapi/customermanagement/customer/001xx000003GYdLAAX",
        "id": "001xx000003GYdLAAX",
        "name": "Pyramid Construction Inc."
    }, {
        "href": "/connect/comms/openapi/customermanagement/customer/001xx000003GYdLAAW",
        "id": "001xx000003GYdLAAW",
        "name": "Edge Communications"
    }
]
```

### POST

Consider you want to create a new customer account with full payload.

#### Sample URL

`https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v60.0/connect/comms/customermanagement/v4/customer`

#### Sample Request

```
{
  "name": "Kevin Harper",
  "engagedParty":
    {
      "name": "Sean Forbes"
    }
  ,
  "account": [
    {
      "id": "001xx000003GaYhAAK",
      "name": "Salesforce India"
    }
  ],
  "contactMedium": [
    {
      "mediumType": "Phone",
      "characteristic": {
        "phoneNumber": "(555) 555-1234"
      }
    },
    {
      "mediumType": "Fax",
      "characteristic": {
        "faxNumber": "(555) 123-4567"
      }
    },
    {
      "mediumType": "Email",
      "characteristic": {
        "emailAddress": "kevin.harper@salesforce.com"
      }
    }
  ]
}
```

#### Sample Response

```
{
    "id": "001xx000003GaYiAAK",
    "href": "/connect/comms/customermanagement/v4/customer/001xx000003GaYiAAK",
    "type": "Customer",
    "name": "Kevin Harper",
    "account": [
        {
            "id": "001xx000003GaX5AAK",
            "href": "/services/data/v60.0/sobjects/account/001xx000003GaX5AAK",
            "name": "Salesforce India",
            "referredType": "Business Account"
        }
    ],
    "engagedParty": {
        "id": "003xx000004WhvlAAC",
        "href": "/services/data/v60.0/sobjects/contact/003xx000004WhvlAAC",
        "name": "Sean Forbes",
        "role": "Individual"
    },
    "contactMedium": [
        {
            "mediumType": "Email",
            "characteristic": {
                "contactType": "Email",
                "emailAddress": "kevin.jarper@salesforce.com"
            }
        },
        {
            "mediumType": "Fax",
            "characteristic": {
                "contactType": "Fax",
                "faxNumber": "(555) 123-4567"
            }
        },
        {
            "mediumType": "Phone",
            "characteristic": {
                "contactType": "Phone",
                "phoneNumber": "(555) 555-1234"
            }
        }
    ]
}
```

### PATCH

Consider you want to update details of a particular customer account.

#### Sample URL

`https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v60.0/connect/comms/customermanagement/v4/customer/001xx000003GaX5AAK`

#### Sample Request

Request body will have fields that need to be updated.

```
{
    "name" : "Edge Communications1 patch",
    "engagedParty":
    {
      "name": "Sean Forbes",
      "id": "001xx000003GaX5AAE"
    }
    ,
    "account" : [
        {
            "id" : "001xx000003GaX5AAK",
            "name" : "Salesforce India"
        },
        {
            "id" : "001xx000003GaYhAAK",
            "name" : "Salesforce USA"
        }
    ],
    "contactMedium": [
    {
      "mediumType": "Phone",
      "characteristic": {
        "phoneNumber": "(555) 123-4560"
      }
    },
    {
      "mediumType": "Fax",
      "characteristic": {
        "faxNumber": "(555) 123-1236"
      }
    },
    {
      "mediumType": "Email",
      "characteristic": {
        "emailAddress": "nonexisting6@salesforce.com"
      }
    }
  ]

}

```

#### Sample Response

```
{
    "id": "001xx000003GaYiAAK",
    "href": "/connect/comms/customermanagement/v4/customer/001xx000003GaYiAAK",
    "type": "Customer",
    "name": "Edge Communications1 patch",
    "account": [
        {
            "id": "001xx000003GaX5AAK",
            "href": "/services/data/v60.0/sobjects/account/001xx000003GaX5AAK",
            "name": "Salesforce India",
            "referredType": "Business Account"
        },
        {
            "id": "001xx000003GaYhAAK",
            "href": "/services/data/v60.0/sobjects/account/001xx000003GaYhAAK",
            "name": "Salesforce USA",
            "referredType": "Business Account"
        }
    ],
    "engagedParty": {
        "id": "003xx000004WhvlAAC",
        "href": "/services/data/v60.0/sobjects/contact/003xx000004WhvlAAC",
        "name": "Sean Forbes",
        "role": "Individual"
    },
    "contactMedium": [
        {
            "mediumType": "Email",
            "characteristic": {
                "contactType": "Email",
                "emailAddress": "nonexisting6@salesforce.com"
            }
        },
        {
            "mediumType": "Fax",
            "characteristic": {
                "contactType": "Fax",
                "faxNumber": "(555) 123-1236"
            }
        },
        {
            "mediumType": "Phone",
            "characteristic": {
                "contactType": "Phone",
                "phoneNumber": "(555) 123-4560"
            }
        }
    ]
}
```

### DELETE

Consider you want to delete details of a particular customer account.

#### Sample URL

`https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v60.0/connect/comms/customermanagement/v4/customer/001xx000003GabvAAC`

#### Sample Request

No request body.

#### Sample Response

Status code 204 with no response body
