---
schema_version: "1"
id: 1078145f3438259e21dea8c1e6edfeb896fded336d97db4d18a9aa8d8936d13f
title: Overview
collection: developer
version: current
locale: en-us
portal_url: https://docs.salesforce.com/developer/current/en-us/industries-integrations/comms/guides/TMF667/TMF667use-cases.md
canonical_url: https://developer.salesforce.com/docs/industries/communications/guide/TMF667use-cases.html
source_site: developer.salesforce.com
content_type: documentation
content_hash: 791b64733d0657e431839ccf49d466192bbd522baf834cf79d82667eca0549a7
products:
  - Communications Cloud TM Forum API
  - Industries Integrations
---
# Overview

- The TMF667 API provides a standardized client interface to manage documents. This API manages the metadata related to a document.
<!-- Following block diagram provides a high-level overview of how the various components are involved in handling TMF667 API operations (GET, POST).

![TMF667 Components](https://developer.salesforce.com/media/TMF667.png "TMF667 Components")-->

In general, we can consider the various [use cases](#tmf667-v4-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.

- [Enabling Access to Industry APIs](https://help.salesforce.com/s/articleView?id=sf.access_industry_api.htm&type=5)
- Ensuring that the required licenses and data packs are installed. For more information, refer [Before you begin](https://developer.salesforce.com/docs/industries/communications/guide/TMF622.html#before-you-begin).

## Sequence of Operations

Following block diagram provides a sequence of operations involved.
![Sequence](https://developer.salesforce.com/media/Sequence_622.png "Sequence of Operations")

## TMF667 v4 Use Cases

| I want to<br>                                                                                                                                                    | Request Type<br>                                                  | Example URL<br>                                                                                                                                                                                                                                           |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Retrieve and display details of a particular document.<br>                                                                                                       | [GET by ID](#get-by-id)                                           | _{https<nolink>://MyDomainLoginUrl}/_/services/data/v63.0/connect/comms/document/v4/document/contentVersionId<br><br>**NOTE:** <br>For invalid product order ID, you will receive HTTP 404 error.<br>                                                     |
| Based on the provided filter values, retrieve and display details of a particular document ID.<br>                                                               | [GET List by Filters](#get-list-by-filters)<br>                   | _{https<nolink>://MyDomainLoginUrl}_/services/data/v63.0/connect/comms/document/v4/document?name=Testing<br><br>**NOTE:** <br>The requested fields will be part of output, if they have value.<br>                                                        |
| List all the documents present in the system.<br>                                                                                                                | [GET List](#get-list)<br>                                         | _{https<nolink>://MyDomainLoginUrl}_/services/data/v63.0/connect/comms/document/v4/document                                                                                                                                                               |
| List all the documents present in the system based on the provided field values. <br>                                                                            | [GET List by Fields](#get-list-by-fields)<br>                     | _{https<nolink>://MyDomainLoginUrl}_/services/data/v63.0/connect/comms/document/v4/document?fields=name,status,description,creationdate,lastupdate,documenttype<br><br>**NOTE:** <br>The requested fields will be part of output, if they have value.<br> |
| List documents based on criteria, limit the number of product orders to a maximum of specified limit, and display results from the page specified by offset.<br> | [GET List by Limit and Offset](#get-list-by-limit-and-offset)<br> | _{https<nolink>://MyDomainLoginUrl}_/services/data/v63.0/connect/comms/document/v4/document?pageLimit=2&offset=3<br>                                                                                                                                      |
| Create a new document by providing the required details.<br>                                                                                                     | [POST](#post)<br>                                                 | _{https<nolink>://MyDomainLoginUrl}_/services/data/v63.0/connect/comms/document/v4/document                                                                                                                                                               |

## GET by ID

Consider you want to retrieve details of a particular product order. For example, **document ID = 068xx0000004CQmAAM**.

### Sample URL

`https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v63.0/connect/comms/document/v4/document/068xx0000004CQmAAM`

### Sample Response

```
{
    "id": "068xx0000004CQmAAM",
    "href": "/connect/comms/document/v4/document/068xx0000004CQmAAM",
    "name": "Testing 2",
    "documentType": "LINK",
    "description": "sample description",
    "status": "PUBLISHED - PRIVATE",
    "creationDate": "Wed Oct 23 11:47:10 GMT 2024",
    "lastUpdate": "Wed Oct 23 11:47:11 GMT 2024",
    "@type": "Document",
    "contentDocumentId": "069xx0000004CIiAAM",
    "attachment": [
        {
            "attachmentType": "url",
            "url": "https://www.amazon.co.uk/via-667-post"
        }
    ]
}

```

## GET List by Filters

Consider you want to retrieve details documents present in the system based on the applied filter.

### Sample URL

`https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v63.0/connect/comms/document/v4/document?name=Testing`

### Sample Response

```
[
    {
        "attachment": [
            {
                "attachmentType": "url",
                "url": "https://www.amazon.co.uk/via-667-post"
            }
        ],
        "documentType": "LINK",
        "@type": "Document",
        "lastUpdate": "Wed Oct 23 11:15:08 GMT 2024",
        "name": "Testing",
        "description": "sample description",
        "id": "068xx0000004CDsAAM",
        "href": "/connect/comms/document/v4/document/068xx0000004CDsAAM",
        "creationDate": "Wed Oct 23 11:15:08 GMT 2024",
        "status": "PUBLISHED - PRIVATE",
        "contentDocumentId": "069xx0000004CIiAAM",
    },
    {
        "attachment": [
            {
                "attachmentType": "url",
                "url": "https://www.amazon.co.uk/via-667-post"
            }
        ],
        "documentType": "LINK",
        "@type": "Document",
        "lastUpdate": "Wed Oct 23 11:20:25 GMT 2024",
        "name": "Testing",
        "description": "sample description",
        "id": "068xx0000004CFUAA2",
        "href": "/connect/comms/document/v4/document/068xx0000004CFUAA2",
        "creationDate": "Wed Oct 23 11:20:25 GMT 2024",
        "status": "PUBLISHED - PRIVATE",
        "contentDocumentId": "069xx0000004CIiAAN",
    }
]

```

## GET List

Consider there are multiple documents in the system and you want to list all of them.

### Sample URL

`https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v63.0/connect/comms/document/v4/document`

### Sample Response

```
[
    {
        "attachment": [
            {
                "attachmentType": "url",
                "url": "https://www.amazon.co.uk/via-667-post"
            }
        ],
        "documentType": "LINK",
        "@type": "Document",
        "lastUpdate": "Wed Oct 23 11:15:08 GMT 2024",
        "name": "Testing",
        "description": "sample description",
        "id": "068xx0000004CDsAAM",
        "href": "/connect/comms/document/v4/document/068xx0000004CDsAAM",
        "creationDate": "Wed Oct 23 11:15:08 GMT 2024",
        "status": "PUBLISHED - PRIVATE",
        "contentDocumentId": "069xx0000004CIiAAM",
    },
    {
        "attachment": [
            {
                "attachmentType": "url",
                "url": "https://www.amazon.co.uk/via-667-post"
            }
        ],
        "documentType": "LINK",
        "@type": "Document",
        "lastUpdate": "Wed Oct 23 11:20:25 GMT 2024",
        "name": "Testing",
        "description": "sample description",
        "id": "068xx0000004CFUAA2",
        "href": "/connect/comms/document/v4/document/068xx0000004CFUAA2",
        "creationDate": "Wed Oct 23 11:20:25 GMT 2024",
        "status": "PUBLISHED - PRIVATE",
        "contentDocumentId": "069xx0000004CIiAAN",
    }
]
```

## GET List by Fields

Consider you want to retrieve all the documents present in the system with provided field values.

### Sample URL

`https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v63.0/connect/comms/document/v4/document?fields=name,status,description,creationdate,lastupdate,documenttype`

### Sample Response

```
[
    {
        "@type": "Document",
        "lastUpdate": "Tue Oct 22 09:41:11 GMT 2024",
        "name": "Test Document",
        "id": "068xx0000004C92AAE",
        "href": "/connect/comms/document/v4/document/068xx0000004C92AAE",
        "creationDate": "Tue Oct 22 09:41:11 GMT 2024",
        "status": "PUBLISHED - PRIVATE"
    },
    {
        "@type": "Document",
        "lastUpdate": "Wed Oct 23 05:05:46 GMT 2024",
        "name": "bazel org.postman_environment_one",
        "id": "068xx0000004CAeAAM",
        "href": "/connect/comms/document/v4/document/068xx0000004CAeAAM",
        "creationDate": "Wed Oct 23 05:05:46 GMT 2024",
        "status": "PUBLISHED - PRIVATE"
    },
    {
        "@type": "Document",
        "lastUpdate": "Wed Oct 23 11:06:29 GMT 2024",
        "name": "Testing 1",
        "description": "sample description",
        "id": "068xx0000004CCGAA2",
        "href": "/connect/comms/document/v4/document/068xx0000004CCGAA2",
        "creationDate": "Wed Oct 23 11:06:27 GMT 2024",
        "status": "PUBLISHED - PRIVATE"
    }
]


```

## GET List by Limit and Offset

Consider you want to retrieve list of documents and apply required pagination query.

### Sample URL

`https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v63.0/connect/comms/document/v4/document?pageLimit=2&offset=3`

NOTE: This request will display a list of records with a maximum of 2 records displayed from 3rd record.

### Sample Response

```
[
    {
        "attachment": [
            {
                "attachmentType": "url",
                "url": "https://www.amazon.co.uk/via-667-post"
            }
        ],
        "documentType": "LINK",
        "@type": "Document",
        "lastUpdate": "Wed Oct 23 11:15:08 GMT 2024",
        "name": "Testing",
        "description": "sample description",
        "id": "068xx0000004CDsAAM",
        "href": "/connect/comms/document/v4/document/068xx0000004CDsAAM",
        "creationDate": "Wed Oct 23 11:15:08 GMT 2024",
        "status": "PUBLISHED - PRIVATE",
        "contentDocumentId": "069xx0000004CIiAAM",
    },
    {
        "attachment": [
            {
                "attachmentType": "url",
                "url": "https://www.amazon.co.uk/via-667-post"
            }
        ],
        "documentType": "LINK",
        "@type": "Document",
        "lastUpdate": "Wed Oct 23 11:20:25 GMT 2024",
        "name": "Testing",
        "description": "sample description",
        "id": "068xx0000004CFUAA2",
        "href": "/connect/comms/document/v4/document/068xx0000004CFUAA2",
        "creationDate": "Wed Oct 23 11:20:25 GMT 2024",
        "status": "PUBLISHED - PRIVATE",
        "contentDocumentId": "069xx0000004CIiAAN",
    }
]

```

## POST

Consider you want to create a new document.<br>

**NOTE:**

- Mandatory attributes are - `name`, `attachment.url`.

### Sample URL

`https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v63.0/connect/comms/document/v4/document`

### Sample Request

```
{
    "name": "Testing 2",
    "description": "sample description",
    "attachment": [
                {
                    "url": "<url-of-the-actual-document-stored-somewhere>"
                }
            ]
}

```

### Sample Response

```
{
    "id": "068xx0000004CSOAA2",
    "href": "/connect/comms/document/v4/document/068xx0000004CSOAA2",
    "name": "Testing 2",
    "documentType": "LINK",
    "description": "sample description",
    "status": "PUBLISHED - PRIVATE",
    "creationDate": "Thu Oct 24 07:39:51 GMT 2024",
    "lastUpdate": "Thu Oct 24 07:39:51 GMT 2024",
    "@type": "Document",
    "contentDocumentId": "069xx0000004CIiAAM",
    "attachment": [
        {
            "attachmentType": "url",
            "url": "<url-of-the-actual-document-stored-somewhere>"
        }
    ]
}

```
