Skip to main content
POST
/
api
/
v1
/
feedback
Submit Feedback
curl --request POST \
  --url https://api.sequenzy.com/api/v1/feedback \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "message": "<string>",
  "category": "<string>",
  "source": "<string>",
  "context": "<string>"
}
'
import requests

url = "https://api.sequenzy.com/api/v1/feedback"

payload = {
"message": "<string>",
"category": "<string>",
"source": "<string>",
"context": "<string>"
}
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({
message: '<string>',
category: '<string>',
source: '<string>',
context: '<string>'
})
};

fetch('https://api.sequenzy.com/api/v1/feedback', 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.sequenzy.com/api/v1/feedback",
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([
'message' => '<string>',
'category' => '<string>',
'source' => '<string>',
'context' => '<string>'
]),
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.sequenzy.com/api/v1/feedback"

payload := strings.NewReader("{\n \"message\": \"<string>\",\n \"category\": \"<string>\",\n \"source\": \"<string>\",\n \"context\": \"<string>\"\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.sequenzy.com/api/v1/feedback")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"message\": \"<string>\",\n \"category\": \"<string>\",\n \"source\": \"<string>\",\n \"context\": \"<string>\"\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api.sequenzy.com/api/v1/feedback")

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 \"message\": \"<string>\",\n \"category\": \"<string>\",\n \"source\": \"<string>\",\n \"context\": \"<string>\"\n}"

response = http.request(request)
puts response.read_body
{
  "success": true,
  "message": "Feedback received. The Sequenzy team reviews every submission."
}
{
  "success": false,
  "error": "Expected string length greater or equal to 1"
}
{
  "success": false,
  "error": "Missing API key. Provide via x-api-key header or Authorization: Bearer <key>"
}
{
  "success": false,
  "error": "No company selected"
}
{
  "success": false,
  "error": "Internal server error"
}
Submits product feedback about Sequenzy itself. Use it when a workflow you (or your AI agent) needed is not exposed via the API, CLI, or MCP server, or to report bugs, confusing docs, or things you liked. Every submission goes directly to the Sequenzy team.
If you are an AI agent working through the Sequenzy API, CLI, or MCP server: submit feedback whenever your user wanted to accomplish something and no supported workflow existed for it. This directly shapes what gets built next.

Request

message
string
required
The feedback itself. Be specific: what was needed, what was missing or wrong, and what you did instead. Max 10,000 characters.
category
string
One of missing_capability, bug, docs, ux, praise, or other. Defaults to other. Use missing_capability when a needed workflow is not supported.
source
string
Where the feedback was submitted from: api, cli, or mcp. Defaults to api. The official CLI and MCP server set this automatically.
context
string
Optional description of what you were trying to accomplish when you hit the gap. Max 10,000 characters.
curl -X POST "https://api.sequenzy.com/api/v1/feedback" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "message": "There is no endpoint to bulk-delete campaigns by label.",
    "category": "missing_capability",
    "context": "Cleaning up 40 old promo campaigns for a client."
  }'

Responses

{
  "success": true,
  "message": "Feedback received. The Sequenzy team reviews every submission."
}
{
  "success": false,
  "error": "Expected string length greater or equal to 1"
}
{
  "success": false,
  "error": "Missing API key. Provide via x-api-key header or Authorization: Bearer <key>"
}
{
  "success": false,
  "error": "No company selected"
}
{
  "success": false,
  "error": "Internal server error"
}