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](../../../../media/TMF667.png "TMF667 Components")-->

In general, we can consider the various 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.

Sequence of Operations

Following block diagram provides a sequence of operations involved. Sequence

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 {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<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<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<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<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<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>"
        }
    ]
}