curl --request POST \
--url https://api.vistaly.com/v1/interviews \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"body": "<string>",
"cardIds": [
"<string>"
],
"feedbackProviders": [
{
"email": "jsmith@example.com",
"firstName": "<string>",
"lastName": "<string>"
}
],
"feedbackReceivers": [
{
"email": "jsmith@example.com"
}
],
"parseMarkdown": true,
"timestamp": "2023-11-07T05:31:56Z",
"url": "https://vistaly.com"
}
'import requests
url = "https://api.vistaly.com/v1/interviews"
payload = {
"body": "<string>",
"cardIds": ["<string>"],
"feedbackProviders": [
{
"email": "jsmith@example.com",
"firstName": "<string>",
"lastName": "<string>"
}
],
"feedbackReceivers": [{ "email": "jsmith@example.com" }],
"parseMarkdown": True,
"timestamp": "2023-11-07T05:31:56Z",
"url": "https://vistaly.com"
}
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({
body: JSON.stringify('<string>'),
cardIds: ['<string>'],
feedbackProviders: [{email: 'jsmith@example.com', firstName: '<string>', lastName: '<string>'}],
feedbackReceivers: [{email: 'jsmith@example.com'}],
parseMarkdown: true,
timestamp: '2023-11-07T05:31:56Z',
url: 'https://vistaly.com'
})
};
fetch('https://api.vistaly.com/v1/interviews', 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.vistaly.com/v1/interviews",
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([
'body' => '<string>',
'cardIds' => [
'<string>'
],
'feedbackProviders' => [
[
'email' => 'jsmith@example.com',
'firstName' => '<string>',
'lastName' => '<string>'
]
],
'feedbackReceivers' => [
[
'email' => 'jsmith@example.com'
]
],
'parseMarkdown' => true,
'timestamp' => '2023-11-07T05:31:56Z',
'url' => 'https://vistaly.com'
]),
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.vistaly.com/v1/interviews"
payload := strings.NewReader("{\n \"body\": \"<string>\",\n \"cardIds\": [\n \"<string>\"\n ],\n \"feedbackProviders\": [\n {\n \"email\": \"jsmith@example.com\",\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\"\n }\n ],\n \"feedbackReceivers\": [\n {\n \"email\": \"jsmith@example.com\"\n }\n ],\n \"parseMarkdown\": true,\n \"timestamp\": \"2023-11-07T05:31:56Z\",\n \"url\": \"https://vistaly.com\"\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.vistaly.com/v1/interviews")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"body\": \"<string>\",\n \"cardIds\": [\n \"<string>\"\n ],\n \"feedbackProviders\": [\n {\n \"email\": \"jsmith@example.com\",\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\"\n }\n ],\n \"feedbackReceivers\": [\n {\n \"email\": \"jsmith@example.com\"\n }\n ],\n \"parseMarkdown\": true,\n \"timestamp\": \"2023-11-07T05:31:56Z\",\n \"url\": \"https://vistaly.com\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.vistaly.com/v1/interviews")
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 \"body\": \"<string>\",\n \"cardIds\": [\n \"<string>\"\n ],\n \"feedbackProviders\": [\n {\n \"email\": \"jsmith@example.com\",\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\"\n }\n ],\n \"feedbackReceivers\": [\n {\n \"email\": \"jsmith@example.com\"\n }\n ],\n \"parseMarkdown\": true,\n \"timestamp\": \"2023-11-07T05:31:56Z\",\n \"url\": \"https://vistaly.com\"\n}"
response = http.request(request)
puts response.read_body{
"message": "Interview created"
}{
"message": "Bad request"
}{
"message": "Unauthorized"
}{
"message": "Forbidden"
}{
"message": "Internal server error"
}Submit interview data
Submit an interview record that contains valuable information regarding user interactions, feedback, and insights.
curl --request POST \
--url https://api.vistaly.com/v1/interviews \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"body": "<string>",
"cardIds": [
"<string>"
],
"feedbackProviders": [
{
"email": "jsmith@example.com",
"firstName": "<string>",
"lastName": "<string>"
}
],
"feedbackReceivers": [
{
"email": "jsmith@example.com"
}
],
"parseMarkdown": true,
"timestamp": "2023-11-07T05:31:56Z",
"url": "https://vistaly.com"
}
'import requests
url = "https://api.vistaly.com/v1/interviews"
payload = {
"body": "<string>",
"cardIds": ["<string>"],
"feedbackProviders": [
{
"email": "jsmith@example.com",
"firstName": "<string>",
"lastName": "<string>"
}
],
"feedbackReceivers": [{ "email": "jsmith@example.com" }],
"parseMarkdown": True,
"timestamp": "2023-11-07T05:31:56Z",
"url": "https://vistaly.com"
}
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({
body: JSON.stringify('<string>'),
cardIds: ['<string>'],
feedbackProviders: [{email: 'jsmith@example.com', firstName: '<string>', lastName: '<string>'}],
feedbackReceivers: [{email: 'jsmith@example.com'}],
parseMarkdown: true,
timestamp: '2023-11-07T05:31:56Z',
url: 'https://vistaly.com'
})
};
fetch('https://api.vistaly.com/v1/interviews', 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.vistaly.com/v1/interviews",
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([
'body' => '<string>',
'cardIds' => [
'<string>'
],
'feedbackProviders' => [
[
'email' => 'jsmith@example.com',
'firstName' => '<string>',
'lastName' => '<string>'
]
],
'feedbackReceivers' => [
[
'email' => 'jsmith@example.com'
]
],
'parseMarkdown' => true,
'timestamp' => '2023-11-07T05:31:56Z',
'url' => 'https://vistaly.com'
]),
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.vistaly.com/v1/interviews"
payload := strings.NewReader("{\n \"body\": \"<string>\",\n \"cardIds\": [\n \"<string>\"\n ],\n \"feedbackProviders\": [\n {\n \"email\": \"jsmith@example.com\",\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\"\n }\n ],\n \"feedbackReceivers\": [\n {\n \"email\": \"jsmith@example.com\"\n }\n ],\n \"parseMarkdown\": true,\n \"timestamp\": \"2023-11-07T05:31:56Z\",\n \"url\": \"https://vistaly.com\"\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.vistaly.com/v1/interviews")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"body\": \"<string>\",\n \"cardIds\": [\n \"<string>\"\n ],\n \"feedbackProviders\": [\n {\n \"email\": \"jsmith@example.com\",\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\"\n }\n ],\n \"feedbackReceivers\": [\n {\n \"email\": \"jsmith@example.com\"\n }\n ],\n \"parseMarkdown\": true,\n \"timestamp\": \"2023-11-07T05:31:56Z\",\n \"url\": \"https://vistaly.com\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.vistaly.com/v1/interviews")
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 \"body\": \"<string>\",\n \"cardIds\": [\n \"<string>\"\n ],\n \"feedbackProviders\": [\n {\n \"email\": \"jsmith@example.com\",\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\"\n }\n ],\n \"feedbackReceivers\": [\n {\n \"email\": \"jsmith@example.com\"\n }\n ],\n \"parseMarkdown\": true,\n \"timestamp\": \"2023-11-07T05:31:56Z\",\n \"url\": \"https://vistaly.com\"\n}"
response = http.request(request)
puts response.read_body{
"message": "Interview created"
}{
"message": "Bad request"
}{
"message": "Unauthorized"
}{
"message": "Forbidden"
}{
"message": "Internal server error"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
The interview's notepad
An array of card IDs to associate with this interview's notepad
An array of individuals who provided the interview, each with their first name (optional), last name (optional), and email
Show child attributes
Show child attributes
An array of individuals who conducted the interview. If the individual isn't a member of your Vistaly organization, their value will be ignored.
Show child attributes
Show child attributes
Whether to parse the body content as markdown and convert to structured format (defaults to false)
The timestamp of when the interview was captured (defaults to current timestamp if not provided)
The url where the interview came from
"https://vistaly.com"
Response
Interview data submitted successfully
"System provided message"