DESTINATION PROPERTIES


Destination Properties are additional custom metadata that can exist on a Destination. They provide a method of storing any custom information which is not suitable on the Destination itself.


Destination Property Object

A Destination Property will contain the following:

{
    "id": "1c7743ac-34a7-4868-aa04-7557facc4ad0",
    "destinationId": "12e3c83a-c829-47ee-b77c-44806f12576a",
    "category": "my-category",
    "key": "my-key",
    "value": "my-value",
    "client": "vualto"
}

The Category, Key, and Value properties are always string data, but can be anything at all. This means you can break down your data into separate properties or store them as a serialized string if you prefer.

Additionally, only a single Category/Key combination can exist for the given Destination. This means if you try to Add a Destination Property which already exists, it will instead perform an Update.


Supported Actions

GET /destinationproperty/id/{id}

Get a Destination Property by Id.

Response: 200 OK and JSON containing the Destination Property object.


GET /destinationproperty/{destinationId}

Get a Destination Property by DestinationId, Category, and Key.

Query Parameters:

    Category: {string} - Required. The Category value to refine to.

    Key: {string} - Required. The Key value to refine to.

Response: 200 OK and JSON containing the Destination Property object.


GET /destinationproperty/all/{destinationId}

Get all DestinationProperties for a given DestinationId.

Query Parameters:

    Category: {string} - Optional. The Category value to refine to.

    Key: {string} - Optional. The Key value to refine to.

    Value: {string} - Optional. The Value to refine to.

Response: 200 OK and JSON containing multiple Destination Property objects.


POST /destinationproperty/

Add or Update a Destination Property.

{
    "destinationId": "",
    "category": "",
    "key": "",
    "value": "",
    "id": null
}

By specifying a value for Id this will perform an Update, else it will perform an Add.

Response: 200 OK and JSON containing the Destination Property object.


DEL /destinationproperty/id/{id}

Delete a Destination Property by Id.

Response: 200 OK


DEL /destinationproperty/{destinationId}

Delete Destination Properties for a given DestinationId, Category, and Key.

Query Parameters:

    Category: {string} - Required. The Category value to refine to.

    Key: {string} - Required. The Key value to refine to.

Response: 200 OK


DEL /destinationproperty/all/{destinationId}

Delete all Destination Properties for a given DestinationId, optionally filtered by Category, Key, and Value.

Query Parameters:

    Category: {string} - Optional. The Category value to refine to.
    
    Key: {string} - Optional. The Key value to refine to.
    
    Value: {string} - Optional. The Value to refine to.

Response: 200 OK