Modify Source Configuration in a Pipeline (POST)

Modifies the Source configuration for the specified pipeline_id. The available settings depend on the Source type.

Note: Use this endpoint if you cannot send a PATCH request. Otherwise, use the Modify Source Configuration in a Pipeline (PATCH) endpoint, which performs the same update.

In the request body, send only the values that you want to change, and send at least one of name, config or auth. Hevo keeps the current value of every field that you do not send. The config object holds the Source configuration fields for the connector, and you can send only the fields that the connector allows you to edit. Hevo rejects a field that cannot be edited even when the value you send is the same as the stored one.

To clear the value of a field, send that field as null. The connector then applies its default value for the field. A key that is not a field of the connector is not rejected and is stored as it is, so check your field names against the connector schema.

For a database Source, you can change only some fields, such as the password and the SSH tunnel and SSL settings. Refer to Changing a Source for the fields that you can change.

Hevo validates the change and runs a Source connection test before it saves the change, but only when the request changes config or sends auth. A change to only the name is not tested. A configuration that the Source rejects returns a 400 with the reason, and nothing is saved. The Pipeline stays in its current state, because the Source is edited on its own. A test that is still running after five minutes returns a 500.

To rotate the credentials of an OAuth Source without a browser sign-in, send the auth object with the following:

  • The client_id and client_secret of your own OAuth app, under client_access.
  • Any app-level credential that the provider requires.
  • A refresh_token or an access_token.

Hevo exchanges them for a new token and tests it before it saves the change, so credentials that do not work leave the Source unchanged. If the test fails, Hevo revokes the new token. If the change succeeds, Hevo does not revoke the token that it replaces.

Sending auth for a connector that does not support OAuth, or for one that Hevo cannot authorize through the API, returns a 400, and Hevo rejects the whole request, including any config change in it. Update a connector that does not use OAuth through config, for example by sending a new database_password, and authorize the other kind in the Hevo UI. Credentials are never returned, so the response includes no Source configuration.

The following changes cancel the current authorization, so send auth in the same request:

  • A change to config.authentication_method, even to a method that does not use OAuth.
  • A change to a field that the provider uses to build the OAuth connection, such as a Salesforce account type or a Zendesk domain.

Sending auth rotates the credentials of an OAuth Source that Hevo can authorize through the API, whether it was authorized in the Hevo UI or through the API. No confirmation is needed.

Refer to Changing a Source for more information about the steps to change the Source settings and rotate its credentials.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
int64
required
≥ 1

Unique identifier of the Pipeline.

Body Params
string

Unique name for your Source, not exceeding 255 characters. The name must start with a letter or a digit, and can contain only letters, digits, spaces, hyphens (-) and underscores (_). The name must be unique within your team, and cannot be blank.

config
object | null

Configuration settings for the Source. The fields that the connector accepts are returned by the Get Configuration Details of a Source Connector endpoint.

auth
object

Credentials of your own OAuth app, used to rotate the authorization of an OAuth Source. A body that sends only this object is valid.

Responses

400

The Source configuration could not be modified. This occurs when:

  • The request body changes nothing.
  • The request body includes a blank name, or a name that is already in use.
  • The request body names a field that the connector does not support editing.
  • The Source connection test fails.
  • The credentials of your own OAuth app are incomplete, or the provider rejects them.
  • The request changes config.authentication_method, or a field that the provider uses to build the OAuth connection, without sending auth in the same request.
  • The Pipeline is in the Failed state.
  • The request has no body.
403

You do not have the permission to modify a Pipeline. Ask your team administrator for a role that allows it.

404

The Pipeline could not be found. This occurs when:

  • No Pipeline exists with the specified pipeline_id, or you do not have access to it.
  • The Pipeline is deleted, or its deletion is in progress.
  • The Pipeline is in a different region from the base URL that you call.
409

The Source configuration could not be modified. This occurs when:

  • The Pipeline is changing state, for example, when it is in the Enabling or Initializing state.
  • Another edit is in progress, in the Hevo UI or through the API.
500

The connection test was still running after five minutes. The response returns an error_reference_id value that you can quote to Hevo Support.

Language
Credentials
Basic
base64
:
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json