Modifying the Destination Configuration

You can modify your Destination settings after creating the Pipeline using the Hevo API. For example, you may have changed the password for your Destination warehouse and need to update it in Hevo.



Prerequisites

  • The Destination can be modified through the Hevo API. To know the types of Destinations you can modify, use the List All Destination Connectors endpoint.
  • You are assigned the Team Administrator, Pipeline Administrator, Team Collaborator, or Pipeline Collaborator role in Hevo to edit the Destination.


To modify a Destination using the Hevo API, perform the following steps:

  1. Navigate to the Modify Destination Configuration endpoint.

  2. Select your Hevo account region from the Base URL drop-down.


  3. Provide the Basic token in the CREDENTIALS section. This token is the combination of your API key and secret key. To generate the API credentials for your Hevo account region, read Generating your API credentials.


  4. In the Path Params section, specify the destination_id. This is the unique identifier of the Destination which you want to modify. You can find this in the Destination Detailed View.


  5. In the Body Params section, select your Destination type from the drop-down. For example, snowflake.


  6. Specify the new values for the configuration fields you want to update, and retain the existing values for the fields that remain unchanged. The API request is simultaneously generated in the API request block to the right.

  7. In the API request block, click Try it! to make the API request and modify your Destination.

Once the Destination configuration is successfully modified, you will receive a response code 200 in the response block with the updated details of your Destination. You can also check the Hevo UI to verify that your Destination configuration was modified successfully.



Example

Here we have provided the steps to modify a Snowflake Destination:

  1. In the Path Params section, specify the destination_id of your Snowflake Destination.

  2. In the Body Params section, select snowflake from the drop-down.

  3. In the name parameter, specify a new name for your Destination or retain the existing name.

  4. From the config drop-down, select the authentication type of your Destination:


  5. Based on the authentication type you selected in step 4, do one of the following:

    • If the authentication_type is BASIC, specify the following:


      • database_password: The new password for your Snowflake account.

    • If the authentication_type is PRIVATE_KEY, specify the following:


      • private_key: The new private key associated with the public key assigned to the Snowflake user. Include the entire private key text and ensure that the text between -----BEGIN ENCRYPTED PRIVATE KEY----- and -----END ENCRYPTED PRIVATE KEY----- does not contain any line breaks.
      • private_key_passphrase: The password given while generating the new encrypted private key. Leave it blank if you are using a non-encrypted private key.

The sample API requests for modifying the Snowflake Destination created with each of the authentication types are displayed below:

curl --request PATCH \
     --url https://us.hevodata.com/api/v1/destinations/123 \ // replace "123" with the ID of your Destination
     --header 'accept: application/json' \
     --header 'authorization: Basic <auth_token>' \
     --header 'content-type: application/json' \
     --data '
{
  "name": "snowflake_dest_name", // replace "snowflake_dest_name" with a new or existing name of your Destination
  "config": {
    "authentication_type": "BASIC",
    "database_password": "password" // replace "password" with the new or existing user password
  }
}
'
curl --request PATCH \
     --url https://us.hevodata.com/api/v1/destinations/123 \ // replace "123" with the ID of your Destination
     --header 'accept: application/json' \
     --header 'authorization: Basic <auth_token>' \
     --header 'content-type: application/json' \
     --data '
{
  "name": "snowflake_dest_name", // replace "snowflake_dest_name" with a new or existing name of your Destination
  "config": {
    "authentication_type": "PRIVATE_KEY",
    "private_key": "-----BEGIN ENCRYPTED PRIVATE KEY-----\nMIIFJDBWBgkqhkiG9w0BBQ0wSTAxBgkqhkiG*****************************************************************************************************************************v0j36rFX8XeKiJqh2TwBvn/v\n-----END ENCRYPTED PRIVATE KEY-----\n", // replace with the new associated private key
    "private_key_passphrase": ""S****3" // replace with passphrase for the new encrypted private key
  }
}
'