---
schema_version: "1"
id: 85f8a1e799b6f730a061b08aebc0e33b594fd70ea13cdf0433417798edfe0cab
title: Use Cases for Agreement Specification
collection: developer
version: current
locale: en-us
portal_url: https://docs.salesforce.com/developer/current/en-us/industries-integrations/comms/guides/TMF651/use-cases-for-agreement-specification.md
canonical_url: https://developer.salesforce.com/docs/industries/communications/guide/use-cases-for-agreement-specification.html
source_site: developer.salesforce.com
content_type: documentation
content_hash: 358faebb5371a7f1b06eba6c11622e6df72ca5a04b1ac49d82134cbd7ab4599e
products:
  - Communications Cloud TM Forum API
  - Industries Integrations
---
# Use Cases for Agreement Specification

| I want to                                                                                                                                                              | Request Type                                                  | Example URL                                                                                                                                                                                                                    |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Retrieve and display details of a particular agreement specification.                                                                                                  | [GET by ID](#get-by-id)                                       | _{{orgendpoint}}/services/data/{{version}}/connect/comms/agreementmanagement/v4/agreementspecification/{id-of-the-resouce-to-be-retrieved}<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 agreement specification.                                                                           | [GET with Fields](#get-with-fields)                           | _{{orgendpoint}}/services/data/{{version}}/connect/comms/agreementmanagement/v4/agreementspecification?fields=name_<br><br>**NOTE:**<br>The requested fields will be part of output, if they have value.                       |
| List all the agreement specifications present in the system.                                                                                                           | [GET List](#get-list)                                         | _{{orgendpoint}}/services/data/{{version}}/connect/comms/agreementmanagement/v4/agreementspecification_                                                                                                                        |
| List agreement specifications present in the system based on the filter applied.                                                                                       | [GET List with Filtering](#get-list-with-filtering)           | _{{orgendpoint}}/services/data/{{version}}/connect/comms/agreementmanagement/v4/agreementspecification?name=testing_<br><br>**NOTE:**<br>The requested fields will be part of output, if they have value.                      |
| List agreement specifications, limit the number of agreement specifications to a maximum of specified limit, and<br>display the results from page specified by offset. | [GET List by limit and offset](#get-list-by-limit-and-offset) | _{{orgendpoint}}/services/data/{{version}}/connect/comms/agreementmanagement/v4/agreementspecification?pageLimit=1&offset=1_<br>                                                                                               |
| Create a new agreement specification by providing the required details.                                                                                                | [POST](#post)                                                 | _{{orgendpoint}}/services/data/{{version}}/connect/comms/agreementmanagement/v4/agreementspecification<br>_<br>**NOTE:**<br>A new agreement specification gets created based on the values mentioned for the mandatory fields. |
| Update details of particular agreement specification.                                                                                                                  | [PATCH](#patch)                                               | _{{orgendpoint}}/services/data/{{version}}/connect/comms/agreementmanagement/v4/agreementspecification/{ID}_                                                                                                                   |
| Delete an agreement specification.                                                                                                                                     | [DELETE](#delete)                                             | _{{orgendpoint}}/services/data/{{version}}/connect/comms/agreementmanagement/v4/agreementspecification/{ID}_                                                                                                                   |

## GET by ID

Consider you want to retrieve details of a particular agreement specification.

### Sample URL

`https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v61.0/connect/comms/agreementmanagement/v4/agreementspecification/2dtxx00000000eLAAQ`

### Sample Response

```
{
    "attachment": [
        {
            "attachmentType": "PDF",
            "href": "/services/data/v60.0/sobjects/attachment/069xx0000004D3UAAU",
            "id": "069xx0000004D3UAAU",
            "mimeType": "pdf",
            "name": "TMF651B_Agreement_Management_API_Conformance_Profile_R19.0.0",
        }
    ],
    "href": "/connect/comms/agreementmanagement/v4/agreementspecification/2dtxx00000000eLAAQ",
    "id": "2dtxx00000000eLAAQ",
    "lifecycleStatus": "Draft",
    "name": "Sample Unique Name",
    "@type": "AgreementSpecification",
    "relatedParty": [
        {
            "href": "/services/data/v60.0/sobjects/User/005xx000001X8CjAAK",
            "id": "005xx000001X8CjAAK",
            "name": "min user"
        }
    ]
}
```

## GET with Fields

Consider you want to retrieve details of an agreement specification with requested attributes (id, href are always included).

### Sample URL

`https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v61.0/connect/comms/agreementmanagement/v4/agreementspecification?fields=name`

### Sample Response

```
[
    {
        "@type": "AgreementSpecification",
        "name": "testing",
        "id": "2dtxx0000000001AAA",
        "href": "/connect/comms/agreementmanagement/v4/agreementspecification/2dtxx0000000001AAA"
    },
    {
        "@type": "AgreementSpecification",
        "name": "Test Document 2",
        "id": "2dtxx00000000CvAAI",
        "href": "/connect/comms/agreementmanagement/v4/agreementspecification/2dtxx00000000CvAAI"
    },
    {
        "@type": "AgreementSpecification",
        "name": "testing",
        "id": "2dtxx00000000EXAAY",
        "href": "/connect/comms/agreementmanagement/v4/agreementspecification/2dtxx00000000EXAAY"
    }
]
```

## GET List

Consider there are agreement specifications in the system and you want to list all of them.

### Sample URL

`https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v61.0/connect/comms/agreementmanagement/v4/agreementspecification`

### Sample Response

```
[
{
    "lifecycleStatus": "Draft",
    "@type": "AgreementSpecification",
    "attachment": [
        {
            "id": "069xx0000004D8KAAU",
            "href": "/services/data/v60.0/sobjects/attachment/069xx0000004D8KAAU",
            "attachmentType": "PDF",
            "mimeType": "pdf",
            "name": "TMF651_Agreement_Management_API_REST_Specification_R19.0.1",
        }
    ],
    "name": "Sample name",
    "id": "2dtxx00000000fxAAA",
    "href": "/connect/comms/agreementmanagement/v4/agreementspecification/2dtxx00000000fxAAA",
    "relatedParty": [
        {
            "id": "005xx000001X8CjAAK",
            "href": "/services/data/v60.0/sobjects/User/005xx000001X8CjAAK",
            "name": "min user"
        }
    ]
},
{
    "lifecycleStatus": "Draft",
    "@type": "AgreementSpecification",
    "attachment": [
        {
            "id": "069xx0000004D6iAAE",
            "href": "/services/data/v60.0/sobjects/attachment/069xx0000004D6iAAE",
            "attachmentType": "JSON",
            "mimeType": "json",
            "name": "637_Collection.postman_collection",
        }
    ],
    "name": "Sample name for testing",
    "id": "2dtxx00000000hZAAQ",
    "href": "/connect/comms/agreementmanagement/v4/agreementspecification/2dtxx00000000hZAAQ",
    "relatedParty": [
        {
            "id": "005xx000001X8CjAAK",
            "href": "/services/data/v60.0/sobjects/User/005xx000001X8CjAAK",
            "name": "min user"
        }
    ]
}
]
```

## GET List with Filtering

Consider you want to retrieve all the agreement specifications in the system with applied filter values.

### Sample URL

`https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v61.0/connect/comms/agreementmanagement/v4/agreementspecification?name=testing`

### Sample Response

```
[
{
    "lifecycleStatus": "Draft",
    "@type": "AgreementSpecification",
    "attachment": [
        {
            "id": "069xx0000004D8KAAU",
            "href": "/services/data/v60.0/sobjects/attachment/069xx0000004D8KAAU",
            "attachmentType": "PDF",
            "mimeType": "pdf",
            "name": "TMF651_Agreement_Management_API_REST_Specification_R19.0.1",
        }
    ],
    "name": "Sample name",
    "id": "2dtxx00000000fxAAA",
    "href": "/connect/comms/agreementmanagement/v4/agreementspecification/2dtxx00000000fxAAA",
    "relatedParty": [
        {
            "id": "005xx000001X8CjAAK",
            "href": "/services/data/v60.0/sobjects/User/005xx000001X8CjAAK",
            "name": "min user"
        }
    ]
},
{
    "lifecycleStatus": "Draft",
    "@type": "AgreementSpecification",
    "attachment": [
        {
            "id": "069xx0000004D6iAAE",
            "href": "/services/data/v60.0/sobjects/attachment/069xx0000004D6iAAE",
            "attachmentType": "JSON",
            "mimeType": "json",
            "name": "637_Collection.postman_collection",
        }
    ],
    "name": "Sample name for testing",
    "id": "2dtxx00000000hZAAQ",
    "href": "/connect/comms/agreementmanagement/v4/agreementspecification/2dtxx00000000hZAAQ",
    "relatedParty": [
        {
            "id": "005xx000001X8CjAAK",
            "href": "/services/data/v60.0/sobjects/User/005xx000001X8CjAAK",
            "name": "min user"
        }
    ]
}
]
```

## GET List by limit and offset

Consider you want to

- Retrieve a list of agreement specifications
- Limit the number of results 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/v61.0/connect/comms/agreementmanagement/v4/agreementspecification?pageLimit=1&offset=1`

**NOTE:** The above pagination query - limit=1&offset=1 will start display from page 1 and will have 1 record.

### Sample Response

```
[
{
    "lifecycleStatus": "Draft",
    "@type": "AgreementSpecification",
    "attachment": [
        {
            "id": "069xx0000004D8KAAU",
            "href": "/services/data/v60.0/sobjects/attachment/069xx0000004D8KAAU",
            "attachmentType": "PDF",
            "mimeType": "pdf",
            "name": "TMF651_Agreement_Management_API_REST_Specification_R19.0.1",
        }
    ],
    "name": "Sample name",
    "id": "2dtxx00000000fxAAA",
    "href": "/connect/comms/agreementmanagement/v4/agreementspecification/2dtxx00000000fxAAA",
    "relatedParty": [
        {
            "id": "005xx000001X8CjAAK",
            "href": "/services/data/v60.0/sobjects/User/005xx000001X8CjAAK",
            "name": "min user"
        }
    ]
},
{
    "lifecycleStatus": "Draft",
    "@type": "AgreementSpecification",
    "attachment": [
        {
            "id": "069xx0000004D6iAAE",
            "href": "/services/data/v60.0/sobjects/attachment/069xx0000004D6iAAE",
            "attachmentType": "JSON",
            "mimeType": "json",
            "name": "637_Collection.postman_collection",
        }
    ],
    "name": "Sample name for testing",
    "id": "2dtxx00000000hZAAQ",
    "href": "/connect/comms/agreementmanagement/v4/agreementspecification/2dtxx00000000hZAAQ",
    "relatedParty": [
        {
            "id": "005xx000001X8CjAAK",
            "href": "/services/data/v60.0/sobjects/User/005xx000001X8CjAAK",
            "name": "min user"
        }
    ]
}
]
```

## POST

Consider you want to create a new agreement specification.

### Sample URL

`https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v61.0/connect/comms/agreementmanagement/v4/agreementspecification`

### Sample Request

```

{
    "name" : "Sample Unique Name",
    "lifecycleStatus" : "Draft",
    "relatedParty": [
        {
        "id": "005xx000001X8CjAAK",
        "name": "Jimmy Doe"
        }
    ],
    "attachment" : [
        {
            "id" : "069xx0000004D3UAAU"
        }
    ]
}
```

### Sample Response

```
{
    "attachment": [
        {
            "attachmentType": "PDF",
            "href": "/services/data/v60.0/sobjects/attachment/069xx0000004D3UAAU",
            "id": "069xx0000004D3UAAU",
            "mimeType": "pdf",
            "name": "TMF651B_Agreement_Management_API_Conformance_Profile_R19.0.0",
        }
    ],
    "href": "/connect/comms/agreementmanagement/v4/agreementspecification/2dtxx00000000eLAAQ",
    "id": "2dtxx00000000eLAAQ",
    "lifecycleStatus": "Draft",
    "name": "Sample Unique Name",
    "@type": "AgreementSpecification",
    "relatedParty": [
        {
            "href": "/services/data/v60.0/sobjects/User/005xx000001X8CjAAK",
            "id": "005xx000001X8CjAAK",
            "name": "Jimmy Doe"
        }
    ]
}
```

## PATCH

Consider you want to update details of a particular agreement specification.

### Sample URL

`https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v61.0/connect/comms/agreementmanagement/v4/agreementspecification/2dtxx00000000eLAAQ`

### Sample Request

Request body will have fields that need to be updated.

```
{
    "attachment" : [
        {
            "id" : "069xx0000004D56AAE"
        }
    ]
}

```

### Sample Response

```
{
    "attachment": [
        {
            "attachmentType": "JSON",
            "href": "/services/data/v60.0/sobjects/attachment/069xx0000004D56AAE",
            "id": "069xx0000004D56AAE",
            "mimeType": "json",
            "name": "OpenAPI-Framework.postman_collection",
        }
    ],
    "href": "/connect/comms/agreementmanagement/v4/agreementspecification/2dtxx00000000eLAAQ",
    "id": "2dtxx00000000eLAAQ",
    "lifecycleStatus": "Draft",
    "name": "Feb 24 - 4",
    "@type": "AgreementSpecification",
    "relatedParty": [
        {
            "href": "/services/data/v60.0/sobjects/User/005xx000001X8CjAAK",
            "id": "005xx000001X8CjAAK",
            "name": "min user"
        }
    ]
}
```

## DELETE

Consider you want to delete details of a particular agreement specification.

### Sample URL

`https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v61.0/connect/comms/agreementmanagement/v4/agreementspecification/2dtxx00000000eLAAQ`

### Sample Request

No request body.

### Sample Response

Status code 204 with no response body
