curl --request POST \
--url https://api.feedspace.io/v3/imports/self-imports/text-review \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: multipart/form-data' \
--form customer_avatar='@example-file' \
--form 'customer_name=<string>' \
--form customer_email=jsmith@example.com \
--form 'customer_designation=<string>' \
--form 'customer_company=<string>' \
--form 'customer_company_url=<string>' \
--form customer_company_logo='@example-file' \
--form rating=3 \
--form 'review_url=<string>' \
--form 'review=<string>' \
--form review_at=2023-12-25 \
--form website_logo='@example-file' \
--form 'attachments[]=<string>' \
--form attachments[].0='@example-file' \
--form attachments[].1='@example-file'import requests
url = "https://api.feedspace.io/v3/imports/self-imports/text-review"
files = {
"customer_avatar": ("example-file", open("example-file", "rb")),
"customer_company_logo": ("example-file", open("example-file", "rb")),
"website_logo": ("example-file", open("example-file", "rb")),
"attachments[].0": ("example-file", open("example-file", "rb")),
"attachments[].1": ("example-file", open("example-file", "rb"))
}
payload = {
"customer_name": "<string>",
"customer_email": "jsmith@example.com",
"customer_designation": "<string>",
"customer_company": "<string>",
"customer_company_url": "<string>",
"rating": "3",
"review_url": "<string>",
"review": "<string>",
"review_at": "2023-12-25",
"attachments[]": "<string>"
}
headers = {"Authorization": "Basic <encoded-value>"}
response = requests.post(url, data=payload, files=files, headers=headers)
print(response.text)const form = new FormData();
form.append('customer_avatar', '<string>');
form.append('customer_name', '<string>');
form.append('customer_email', 'jsmith@example.com');
form.append('customer_designation', '<string>');
form.append('customer_company', '<string>');
form.append('customer_company_url', '<string>');
form.append('customer_company_logo', '<string>');
form.append('rating', '3');
form.append('review_url', '<string>');
form.append('review', '<string>');
form.append('review_at', '2023-12-25');
form.append('website_logo', '<string>');
form.append('attachments[]', '<string>');
form.append('attachments[].0', '{
"fileName": "example-file"
}');
form.append('attachments[].1', '{
"fileName": "example-file"
}');
const options = {method: 'POST', headers: {Authorization: 'Basic <encoded-value>'}};
options.body = form;
fetch('https://api.feedspace.io/v3/imports/self-imports/text-review', 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.feedspace.io/v3/imports/self-imports/text-review",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_avatar\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_name\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_email\"\r\n\r\njsmith@example.com\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_designation\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company_url\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company_logo\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"rating\"\r\n\r\n3\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review_url\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review_at\"\r\n\r\n2023-12-25\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"website_logo\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments%5B%5D\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments[].0\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments[].1\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001--",
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: multipart/form-data"
],
]);
$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.feedspace.io/v3/imports/self-imports/text-review"
payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_avatar\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_name\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_email\"\r\n\r\njsmith@example.com\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_designation\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company_url\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company_logo\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"rating\"\r\n\r\n3\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review_url\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review_at\"\r\n\r\n2023-12-25\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"website_logo\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments%5B%5D\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments[].0\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments[].1\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001--")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
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.feedspace.io/v3/imports/self-imports/text-review")
.header("Authorization", "Basic <encoded-value>")
.body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_avatar\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_name\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_email\"\r\n\r\njsmith@example.com\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_designation\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company_url\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company_logo\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"rating\"\r\n\r\n3\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review_url\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review_at\"\r\n\r\n2023-12-25\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"website_logo\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments%5B%5D\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments[].0\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments[].1\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001--")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.feedspace.io/v3/imports/self-imports/text-review")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request.body = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_avatar\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_name\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_email\"\r\n\r\njsmith@example.com\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_designation\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company_url\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company_logo\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"rating\"\r\n\r\n3\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review_url\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review_at\"\r\n\r\n2023-12-25\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"website_logo\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments%5B%5D\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments[].0\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments[].1\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001--"
response = http.request(request)
puts response.read_body{
"data": {
"project_id": 5020,
"social_platform_id": 46,
"source": "Manual Text Review",
"extra_details": "{\"customer_name\":\"User\",\"customer_email\":\"developer@feedspace.io\",\"customer_designation\":\"Engineer\",\"customer_company\":\"Feedspace\",\"rating\":\"5\",\"review_url\":\"https:\\/\\/www.feedspace.io\\/\",\"review\":\"Excellent Digital Product. They create client testimonial videos and interview the clients from the comfort of their own homes.\",\"fs_workspace_id\":\"workspace_XFNj94dgkDhc6lc5rsjF66nr\",\"fs_original_workspace_id\":5020,\"search\":\"Manual Text Review\"}",
"is_feed_imported": 1,
"user_id": 7243,
"created_by": 7243,
"updated_at": "2025-06-11T07:31:49.000000Z",
"created_at": "2025-06-11T07:31:44.000000Z",
"id": 4066,
"user": {
"id": 7243,
"unique_user_id": "zhBU6t",
"appsumo_uuid": null,
"name": "User",
"email": "developer@feedspace.io",
"email_verified_at": null,
"referred_by": "0",
"payment_email": null,
"provider": null,
"provider_id": null,
"plan_id": null,
"beta_user": 0,
"is_verified_account": 1,
"is_blocked": 0,
"ip_address": "49.36.88.114",
"created_at": "2025-04-04T11:52:43.000000Z",
"updated_at": "2025-04-04T11:52:43.000000Z"
},
"social_platform": {
"id": 46,
"slug": "manual_text_review",
"name": "Manual Text Review",
"url": null,
"icon_url": "/assets/img/social-icons/v2/manual_text_review_icon.svg",
"review_type": 1,
"auto_sync_status": 0,
"created_at": "2025-04-22T07:49:08.000000Z",
"updated_at": "2025-04-22T07:49:08.000000Z",
"icon_full_url": "https://static.feedspace.io/assets/img/social-icons/v2/manual_text_review_icon.svg"
},
"social_feeds": [
{
"id": 176111,
"unique_feedback_id": "WjOvsE",
"user_id": 7243,
"project_id": 5020,
"social_platform_id": 46,
"social_feed_source_id": 4066,
"import_scheduler_id": null,
"feed_type": "manual_text",
"review_id": "xqr1lB",
"review": "Excellent Digital Product. They create client testimonial videos and interview the clients from the comfort of their own homes.",
"review_title": null,
"review_url": "https://www.feedspace.io/",
"review_website_logo": "uploads/zhBU6t/manual_text_review-reviews/manual_text_review-review-author-profile-L036-1749627109.jpg",
"rating": 5,
"rating_type": 1,
"is_rating_display": 1,
"customer_name": "User",
"customer_email": "developer@feedspace.io",
"customer_company": "Feedspace",
"customer_designation": "Engineer",
"customer_avatar": null,
"review_at": "2025-06-11 07:31:44",
"extra_details": "{\"customer_name\":\"User\",\"customer_email\":\"developer@feedspace.io\",\"customer_designation\":\"Engineer\",\"customer_company\":\"Feedspace\",\"rating\":\"5\",\"review_url\":\"https:\\/\\/www.feedspace.io\\/\",\"review\":\"Excellent Digital Product. They create client testimonial videos and interview the clients from the comfort of their own homes.\",\"fs_workspace_id\":\"workspace_XFNj94dgkDhc6lc5rsjF66nr\",\"fs_original_workspace_id\":5020,\"search\":\"Manual Text Review\"}",
"favourite": 0,
"sentiment_id": null,
"review_submitted_at": "2025-06-11 07:31:44",
"created_by": 7243,
"deleted_at": null,
"created_at": "2025-06-11T07:31:44.000000Z",
"updated_at": "2025-06-11T07:31:49.000000Z"
}
]
}
}Import Text Review
Import a text review manually into the workspace. All fields are optional, but at least one of the following must be provided: rating, review, or attachments.
curl --request POST \
--url https://api.feedspace.io/v3/imports/self-imports/text-review \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: multipart/form-data' \
--form customer_avatar='@example-file' \
--form 'customer_name=<string>' \
--form customer_email=jsmith@example.com \
--form 'customer_designation=<string>' \
--form 'customer_company=<string>' \
--form 'customer_company_url=<string>' \
--form customer_company_logo='@example-file' \
--form rating=3 \
--form 'review_url=<string>' \
--form 'review=<string>' \
--form review_at=2023-12-25 \
--form website_logo='@example-file' \
--form 'attachments[]=<string>' \
--form attachments[].0='@example-file' \
--form attachments[].1='@example-file'import requests
url = "https://api.feedspace.io/v3/imports/self-imports/text-review"
files = {
"customer_avatar": ("example-file", open("example-file", "rb")),
"customer_company_logo": ("example-file", open("example-file", "rb")),
"website_logo": ("example-file", open("example-file", "rb")),
"attachments[].0": ("example-file", open("example-file", "rb")),
"attachments[].1": ("example-file", open("example-file", "rb"))
}
payload = {
"customer_name": "<string>",
"customer_email": "jsmith@example.com",
"customer_designation": "<string>",
"customer_company": "<string>",
"customer_company_url": "<string>",
"rating": "3",
"review_url": "<string>",
"review": "<string>",
"review_at": "2023-12-25",
"attachments[]": "<string>"
}
headers = {"Authorization": "Basic <encoded-value>"}
response = requests.post(url, data=payload, files=files, headers=headers)
print(response.text)const form = new FormData();
form.append('customer_avatar', '<string>');
form.append('customer_name', '<string>');
form.append('customer_email', 'jsmith@example.com');
form.append('customer_designation', '<string>');
form.append('customer_company', '<string>');
form.append('customer_company_url', '<string>');
form.append('customer_company_logo', '<string>');
form.append('rating', '3');
form.append('review_url', '<string>');
form.append('review', '<string>');
form.append('review_at', '2023-12-25');
form.append('website_logo', '<string>');
form.append('attachments[]', '<string>');
form.append('attachments[].0', '{
"fileName": "example-file"
}');
form.append('attachments[].1', '{
"fileName": "example-file"
}');
const options = {method: 'POST', headers: {Authorization: 'Basic <encoded-value>'}};
options.body = form;
fetch('https://api.feedspace.io/v3/imports/self-imports/text-review', 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.feedspace.io/v3/imports/self-imports/text-review",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_avatar\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_name\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_email\"\r\n\r\njsmith@example.com\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_designation\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company_url\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company_logo\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"rating\"\r\n\r\n3\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review_url\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review_at\"\r\n\r\n2023-12-25\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"website_logo\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments%5B%5D\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments[].0\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments[].1\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001--",
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: multipart/form-data"
],
]);
$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.feedspace.io/v3/imports/self-imports/text-review"
payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_avatar\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_name\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_email\"\r\n\r\njsmith@example.com\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_designation\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company_url\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company_logo\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"rating\"\r\n\r\n3\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review_url\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review_at\"\r\n\r\n2023-12-25\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"website_logo\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments%5B%5D\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments[].0\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments[].1\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001--")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
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.feedspace.io/v3/imports/self-imports/text-review")
.header("Authorization", "Basic <encoded-value>")
.body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_avatar\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_name\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_email\"\r\n\r\njsmith@example.com\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_designation\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company_url\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company_logo\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"rating\"\r\n\r\n3\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review_url\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review_at\"\r\n\r\n2023-12-25\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"website_logo\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments%5B%5D\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments[].0\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments[].1\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001--")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.feedspace.io/v3/imports/self-imports/text-review")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request.body = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_avatar\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_name\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_email\"\r\n\r\njsmith@example.com\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_designation\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company_url\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"customer_company_logo\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"rating\"\r\n\r\n3\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review_url\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"review_at\"\r\n\r\n2023-12-25\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"website_logo\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments%5B%5D\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments[].0\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"attachments[].1\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001--"
response = http.request(request)
puts response.read_body{
"data": {
"project_id": 5020,
"social_platform_id": 46,
"source": "Manual Text Review",
"extra_details": "{\"customer_name\":\"User\",\"customer_email\":\"developer@feedspace.io\",\"customer_designation\":\"Engineer\",\"customer_company\":\"Feedspace\",\"rating\":\"5\",\"review_url\":\"https:\\/\\/www.feedspace.io\\/\",\"review\":\"Excellent Digital Product. They create client testimonial videos and interview the clients from the comfort of their own homes.\",\"fs_workspace_id\":\"workspace_XFNj94dgkDhc6lc5rsjF66nr\",\"fs_original_workspace_id\":5020,\"search\":\"Manual Text Review\"}",
"is_feed_imported": 1,
"user_id": 7243,
"created_by": 7243,
"updated_at": "2025-06-11T07:31:49.000000Z",
"created_at": "2025-06-11T07:31:44.000000Z",
"id": 4066,
"user": {
"id": 7243,
"unique_user_id": "zhBU6t",
"appsumo_uuid": null,
"name": "User",
"email": "developer@feedspace.io",
"email_verified_at": null,
"referred_by": "0",
"payment_email": null,
"provider": null,
"provider_id": null,
"plan_id": null,
"beta_user": 0,
"is_verified_account": 1,
"is_blocked": 0,
"ip_address": "49.36.88.114",
"created_at": "2025-04-04T11:52:43.000000Z",
"updated_at": "2025-04-04T11:52:43.000000Z"
},
"social_platform": {
"id": 46,
"slug": "manual_text_review",
"name": "Manual Text Review",
"url": null,
"icon_url": "/assets/img/social-icons/v2/manual_text_review_icon.svg",
"review_type": 1,
"auto_sync_status": 0,
"created_at": "2025-04-22T07:49:08.000000Z",
"updated_at": "2025-04-22T07:49:08.000000Z",
"icon_full_url": "https://static.feedspace.io/assets/img/social-icons/v2/manual_text_review_icon.svg"
},
"social_feeds": [
{
"id": 176111,
"unique_feedback_id": "WjOvsE",
"user_id": 7243,
"project_id": 5020,
"social_platform_id": 46,
"social_feed_source_id": 4066,
"import_scheduler_id": null,
"feed_type": "manual_text",
"review_id": "xqr1lB",
"review": "Excellent Digital Product. They create client testimonial videos and interview the clients from the comfort of their own homes.",
"review_title": null,
"review_url": "https://www.feedspace.io/",
"review_website_logo": "uploads/zhBU6t/manual_text_review-reviews/manual_text_review-review-author-profile-L036-1749627109.jpg",
"rating": 5,
"rating_type": 1,
"is_rating_display": 1,
"customer_name": "User",
"customer_email": "developer@feedspace.io",
"customer_company": "Feedspace",
"customer_designation": "Engineer",
"customer_avatar": null,
"review_at": "2025-06-11 07:31:44",
"extra_details": "{\"customer_name\":\"User\",\"customer_email\":\"developer@feedspace.io\",\"customer_designation\":\"Engineer\",\"customer_company\":\"Feedspace\",\"rating\":\"5\",\"review_url\":\"https:\\/\\/www.feedspace.io\\/\",\"review\":\"Excellent Digital Product. They create client testimonial videos and interview the clients from the comfort of their own homes.\",\"fs_workspace_id\":\"workspace_XFNj94dgkDhc6lc5rsjF66nr\",\"fs_original_workspace_id\":5020,\"search\":\"Manual Text Review\"}",
"favourite": 0,
"sentiment_id": null,
"review_submitted_at": "2025-06-11 07:31:44",
"created_by": 7243,
"deleted_at": null,
"created_at": "2025-06-11T07:31:44.000000Z",
"updated_at": "2025-06-11T07:31:49.000000Z"
}
]
}
}Authorizations
HTTP Basic Authentication using API Key and Secret Key. The credentials should be Base64 encoded in the format 'api_key:secret_key'. You can obtain your API Key and Secret Key from Feedspace → Automation → API (https://app.feedspace.io/automation/api).
Body
Request body for importing a text review manually. All fields are optional, but at least one of the following must be provided: rating, review, or attachments.
Customer avatar image (optional). Allowed formats: jpeg, png, jpg, gif, svg, webp, bmp, avif. Max size: 15 MB
Customer name (optional)
Customer email (optional, must be valid email format)
Customer designation/job title (optional)
Customer company name (optional)
Customer company website URL (optional)
Customer company logo image (optional). Allowed formats: jpeg, png, jpg, gif, svg, webp, bmp, avif. Max size: 15 MB
Rating value (1 = lowest, 5 = highest). Optional, but at least one of rating, review, or attachments must be provided
1 <= x <= 5Review source URL (optional)
Review text content (optional, but at least one of rating, review, or attachments must be provided)
Date when the review was submitted (YYYY-MM-DD format, optional)
Website logo image (optional). Allowed formats: jpeg, png, jpg, gif, svg, webp, bmp, avif. Max size: 15 MB
Attachment images (optional, but at least one of rating, review, or attachments must be provided). Allowed formats: jpeg, png, jpg, gif, svg, webp, bmp, avif. Max size: 15 MB per file
Response
Text review imported successfully.
The response is of type object.