curl --request POST \
--url https://api.hightouch.com/api/v1/sources \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "postgres-connection2",
"slug": "postgres-connection2",
"type": "postgres",
"configuration": {
"host": "example.example.us-east-1.rds.amazonaws.com",
"port": "5432",
"user": "dbUserName",
"database": "dbName",
"password": "password!123"
}
}
'import requests
url = "https://api.hightouch.com/api/v1/sources"
payload = {
"name": "postgres-connection2",
"slug": "postgres-connection2",
"type": "postgres",
"configuration": {
"host": "example.example.us-east-1.rds.amazonaws.com",
"port": "5432",
"user": "dbUserName",
"database": "dbName",
"password": "password!123"
}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: 'postgres-connection2',
slug: 'postgres-connection2',
type: 'postgres',
configuration: {
host: 'example.example.us-east-1.rds.amazonaws.com',
port: '5432',
user: 'dbUserName',
database: 'dbName',
password: 'password!123'
}
})
};
fetch('https://api.hightouch.com/api/v1/sources', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.hightouch.com/api/v1/sources",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'name' => 'postgres-connection2',
'slug' => 'postgres-connection2',
'type' => 'postgres',
'configuration' => [
'host' => 'example.example.us-east-1.rds.amazonaws.com',
'port' => '5432',
'user' => 'dbUserName',
'database' => 'dbName',
'password' => 'password!123'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.hightouch.com/api/v1/sources"
payload := strings.NewReader("{\n \"name\": \"postgres-connection2\",\n \"slug\": \"postgres-connection2\",\n \"type\": \"postgres\",\n \"configuration\": {\n \"host\": \"example.example.us-east-1.rds.amazonaws.com\",\n \"port\": \"5432\",\n \"user\": \"dbUserName\",\n \"database\": \"dbName\",\n \"password\": \"password!123\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.hightouch.com/api/v1/sources")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"postgres-connection2\",\n \"slug\": \"postgres-connection2\",\n \"type\": \"postgres\",\n \"configuration\": {\n \"host\": \"example.example.us-east-1.rds.amazonaws.com\",\n \"port\": \"5432\",\n \"user\": \"dbUserName\",\n \"database\": \"dbName\",\n \"password\": \"password!123\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hightouch.com/api/v1/sources")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"postgres-connection2\",\n \"slug\": \"postgres-connection2\",\n \"type\": \"postgres\",\n \"configuration\": {\n \"host\": \"example.example.us-east-1.rds.amazonaws.com\",\n \"port\": \"5432\",\n \"user\": \"dbUserName\",\n \"database\": \"dbName\",\n \"password\": \"password!123\"\n }\n}"
response = http.request(request)
puts response.read_body{
"id": 426,
"name": "postgres-connection2",
"slug": "postgres-connection2",
"workspaceId": 1,
"createdAt": "2022-12-12T22:46:57.618Z",
"updatedAt": "2022-12-12T22:46:57.618Z",
"type": "postgres",
"configuration": {
"host": "example.example.us-east-1.rds.amazonaws.com",
"port": "5432",
"user": "dbUserName",
"database": "dbName"
}
}{
"message": "Validation failed",
"details": {}
}{
"message": "Validation failed",
"details": {}
}"Internal Server Error"Create Source
Create a new source
curl --request POST \
--url https://api.hightouch.com/api/v1/sources \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "postgres-connection2",
"slug": "postgres-connection2",
"type": "postgres",
"configuration": {
"host": "example.example.us-east-1.rds.amazonaws.com",
"port": "5432",
"user": "dbUserName",
"database": "dbName",
"password": "password!123"
}
}
'import requests
url = "https://api.hightouch.com/api/v1/sources"
payload = {
"name": "postgres-connection2",
"slug": "postgres-connection2",
"type": "postgres",
"configuration": {
"host": "example.example.us-east-1.rds.amazonaws.com",
"port": "5432",
"user": "dbUserName",
"database": "dbName",
"password": "password!123"
}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: 'postgres-connection2',
slug: 'postgres-connection2',
type: 'postgres',
configuration: {
host: 'example.example.us-east-1.rds.amazonaws.com',
port: '5432',
user: 'dbUserName',
database: 'dbName',
password: 'password!123'
}
})
};
fetch('https://api.hightouch.com/api/v1/sources', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.hightouch.com/api/v1/sources",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'name' => 'postgres-connection2',
'slug' => 'postgres-connection2',
'type' => 'postgres',
'configuration' => [
'host' => 'example.example.us-east-1.rds.amazonaws.com',
'port' => '5432',
'user' => 'dbUserName',
'database' => 'dbName',
'password' => 'password!123'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.hightouch.com/api/v1/sources"
payload := strings.NewReader("{\n \"name\": \"postgres-connection2\",\n \"slug\": \"postgres-connection2\",\n \"type\": \"postgres\",\n \"configuration\": {\n \"host\": \"example.example.us-east-1.rds.amazonaws.com\",\n \"port\": \"5432\",\n \"user\": \"dbUserName\",\n \"database\": \"dbName\",\n \"password\": \"password!123\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.hightouch.com/api/v1/sources")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"postgres-connection2\",\n \"slug\": \"postgres-connection2\",\n \"type\": \"postgres\",\n \"configuration\": {\n \"host\": \"example.example.us-east-1.rds.amazonaws.com\",\n \"port\": \"5432\",\n \"user\": \"dbUserName\",\n \"database\": \"dbName\",\n \"password\": \"password!123\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hightouch.com/api/v1/sources")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"postgres-connection2\",\n \"slug\": \"postgres-connection2\",\n \"type\": \"postgres\",\n \"configuration\": {\n \"host\": \"example.example.us-east-1.rds.amazonaws.com\",\n \"port\": \"5432\",\n \"user\": \"dbUserName\",\n \"database\": \"dbName\",\n \"password\": \"password!123\"\n }\n}"
response = http.request(request)
puts response.read_body{
"id": 426,
"name": "postgres-connection2",
"slug": "postgres-connection2",
"workspaceId": 1,
"createdAt": "2022-12-12T22:46:57.618Z",
"updatedAt": "2022-12-12T22:46:57.618Z",
"type": "postgres",
"configuration": {
"host": "example.example.us-east-1.rds.amazonaws.com",
"port": "5432",
"user": "dbUserName",
"database": "dbName"
}
}{
"message": "Validation failed",
"details": {}
}{
"message": "Validation failed",
"details": {}
}"Internal Server Error"Authorizations
Body
The input for creating a Source
The source's configuration. This specifies general metadata about sources, like connection details Hightouch will use this configuration to connect to underlying source.
The schema depends on the source type.
Consumers should NOT make assumptions on the contents of the configuration. It may change as Hightouch updates its internal code.
Show child attributes
Show child attributes
Response
Ok
The database or warehouse where your data is stored. The starting point for a Hightouch data pipeline.
The source's configuration. This specifies general metadata about sources, like connection details Hightouch will use this configuration to connect to underlying source.
The schema depends on the source type.
Consumers should NOT make assumptions on the contents of the configuration. It may change as Hightouch updates its internal code.
Show child attributes
Show child attributes
Was this page helpful?