curl --request PUT \
--url https://api.meetsquad.ai/organisations/{orgId}/workspaces/{workspaceId}/solutions/{solutionId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"systemPrompt": "Hello",
"aiProcessingState": "FINISHED",
"refinementLog": [],
"title": "Implement Single Sign-On",
"description": "Integrate with OAuth providers to simplify user login experience",
"status": "Backlog",
"pros": [
"Improved security",
"Simplified login flow",
"Reduced password reset requests"
],
"cons": [
"Requires integration with external providers",
"May add complexity to registration"
],
"ownerId": "d4e71c2b-a498-42af-b7f5-69de06a0d7c4",
"prd": "Objective: Help users easily create...",
"horizon": "now",
"opportunityIds": [
"<string>"
],
"updateTriggeredBy": "user"
}
'import requests
url = "https://api.meetsquad.ai/organisations/{orgId}/workspaces/{workspaceId}/solutions/{solutionId}"
payload = {
"systemPrompt": "Hello",
"aiProcessingState": "FINISHED",
"refinementLog": [],
"title": "Implement Single Sign-On",
"description": "Integrate with OAuth providers to simplify user login experience",
"status": "Backlog",
"pros": ["Improved security", "Simplified login flow", "Reduced password reset requests"],
"cons": ["Requires integration with external providers", "May add complexity to registration"],
"ownerId": "d4e71c2b-a498-42af-b7f5-69de06a0d7c4",
"prd": "Objective: Help users easily create...",
"horizon": "now",
"opportunityIds": ["<string>"],
"updateTriggeredBy": "user"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
systemPrompt: 'Hello',
aiProcessingState: 'FINISHED',
refinementLog: [],
title: 'Implement Single Sign-On',
description: 'Integrate with OAuth providers to simplify user login experience',
status: 'Backlog',
pros: [
'Improved security',
'Simplified login flow',
'Reduced password reset requests'
],
cons: [
'Requires integration with external providers',
'May add complexity to registration'
],
ownerId: 'd4e71c2b-a498-42af-b7f5-69de06a0d7c4',
prd: 'Objective: Help users easily create...',
horizon: 'now',
opportunityIds: ['<string>'],
updateTriggeredBy: 'user'
})
};
fetch('https://api.meetsquad.ai/organisations/{orgId}/workspaces/{workspaceId}/solutions/{solutionId}', 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.meetsquad.ai/organisations/{orgId}/workspaces/{workspaceId}/solutions/{solutionId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'systemPrompt' => 'Hello',
'aiProcessingState' => 'FINISHED',
'refinementLog' => [
],
'title' => 'Implement Single Sign-On',
'description' => 'Integrate with OAuth providers to simplify user login experience',
'status' => 'Backlog',
'pros' => [
'Improved security',
'Simplified login flow',
'Reduced password reset requests'
],
'cons' => [
'Requires integration with external providers',
'May add complexity to registration'
],
'ownerId' => 'd4e71c2b-a498-42af-b7f5-69de06a0d7c4',
'prd' => 'Objective: Help users easily create...',
'horizon' => 'now',
'opportunityIds' => [
'<string>'
],
'updateTriggeredBy' => 'user'
]),
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.meetsquad.ai/organisations/{orgId}/workspaces/{workspaceId}/solutions/{solutionId}"
payload := strings.NewReader("{\n \"systemPrompt\": \"Hello\",\n \"aiProcessingState\": \"FINISHED\",\n \"refinementLog\": [],\n \"title\": \"Implement Single Sign-On\",\n \"description\": \"Integrate with OAuth providers to simplify user login experience\",\n \"status\": \"Backlog\",\n \"pros\": [\n \"Improved security\",\n \"Simplified login flow\",\n \"Reduced password reset requests\"\n ],\n \"cons\": [\n \"Requires integration with external providers\",\n \"May add complexity to registration\"\n ],\n \"ownerId\": \"d4e71c2b-a498-42af-b7f5-69de06a0d7c4\",\n \"prd\": \"Objective: Help users easily create...\",\n \"horizon\": \"now\",\n \"opportunityIds\": [\n \"<string>\"\n ],\n \"updateTriggeredBy\": \"user\"\n}")
req, _ := http.NewRequest("PUT", 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.put("https://api.meetsquad.ai/organisations/{orgId}/workspaces/{workspaceId}/solutions/{solutionId}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"systemPrompt\": \"Hello\",\n \"aiProcessingState\": \"FINISHED\",\n \"refinementLog\": [],\n \"title\": \"Implement Single Sign-On\",\n \"description\": \"Integrate with OAuth providers to simplify user login experience\",\n \"status\": \"Backlog\",\n \"pros\": [\n \"Improved security\",\n \"Simplified login flow\",\n \"Reduced password reset requests\"\n ],\n \"cons\": [\n \"Requires integration with external providers\",\n \"May add complexity to registration\"\n ],\n \"ownerId\": \"d4e71c2b-a498-42af-b7f5-69de06a0d7c4\",\n \"prd\": \"Objective: Help users easily create...\",\n \"horizon\": \"now\",\n \"opportunityIds\": [\n \"<string>\"\n ],\n \"updateTriggeredBy\": \"user\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.meetsquad.ai/organisations/{orgId}/workspaces/{workspaceId}/solutions/{solutionId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"systemPrompt\": \"Hello\",\n \"aiProcessingState\": \"FINISHED\",\n \"refinementLog\": [],\n \"title\": \"Implement Single Sign-On\",\n \"description\": \"Integrate with OAuth providers to simplify user login experience\",\n \"status\": \"Backlog\",\n \"pros\": [\n \"Improved security\",\n \"Simplified login flow\",\n \"Reduced password reset requests\"\n ],\n \"cons\": [\n \"Requires integration with external providers\",\n \"May add complexity to registration\"\n ],\n \"ownerId\": \"d4e71c2b-a498-42af-b7f5-69de06a0d7c4\",\n \"prd\": \"Objective: Help users easily create...\",\n \"horizon\": \"now\",\n \"opportunityIds\": [\n \"<string>\"\n ],\n \"updateTriggeredBy\": \"user\"\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"aiProcessingState": "FINISHED",
"refinementLog": [],
"title": "Implement Single Sign-On",
"description": "Integrate with OAuth providers to simplify user login experience",
"status": "Backlog",
"pros": [
"Improved security",
"Simplified login flow",
"Reduced password reset requests"
],
"cons": [
"Requires integration with external providers",
"May add complexity to registration"
],
"hideContent": false,
"createdBy": "generated",
"createdAt": "2025-03-26T22:35:46Z",
"updatedAt": "2025-03-26T22:35:46Z",
"priority": "a0",
"prd": "Objective: Help users easily create...",
"opportunities": [],
"insights": [],
"outcomes": [],
"systemPrompt": "Hello",
"ownerId": "d4e71c2b-a498-42af-b7f5-69de06a0d7c4",
"horizon": "now"
}
}Update solution
Updates a specific solution by ID
curl --request PUT \
--url https://api.meetsquad.ai/organisations/{orgId}/workspaces/{workspaceId}/solutions/{solutionId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"systemPrompt": "Hello",
"aiProcessingState": "FINISHED",
"refinementLog": [],
"title": "Implement Single Sign-On",
"description": "Integrate with OAuth providers to simplify user login experience",
"status": "Backlog",
"pros": [
"Improved security",
"Simplified login flow",
"Reduced password reset requests"
],
"cons": [
"Requires integration with external providers",
"May add complexity to registration"
],
"ownerId": "d4e71c2b-a498-42af-b7f5-69de06a0d7c4",
"prd": "Objective: Help users easily create...",
"horizon": "now",
"opportunityIds": [
"<string>"
],
"updateTriggeredBy": "user"
}
'import requests
url = "https://api.meetsquad.ai/organisations/{orgId}/workspaces/{workspaceId}/solutions/{solutionId}"
payload = {
"systemPrompt": "Hello",
"aiProcessingState": "FINISHED",
"refinementLog": [],
"title": "Implement Single Sign-On",
"description": "Integrate with OAuth providers to simplify user login experience",
"status": "Backlog",
"pros": ["Improved security", "Simplified login flow", "Reduced password reset requests"],
"cons": ["Requires integration with external providers", "May add complexity to registration"],
"ownerId": "d4e71c2b-a498-42af-b7f5-69de06a0d7c4",
"prd": "Objective: Help users easily create...",
"horizon": "now",
"opportunityIds": ["<string>"],
"updateTriggeredBy": "user"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
systemPrompt: 'Hello',
aiProcessingState: 'FINISHED',
refinementLog: [],
title: 'Implement Single Sign-On',
description: 'Integrate with OAuth providers to simplify user login experience',
status: 'Backlog',
pros: [
'Improved security',
'Simplified login flow',
'Reduced password reset requests'
],
cons: [
'Requires integration with external providers',
'May add complexity to registration'
],
ownerId: 'd4e71c2b-a498-42af-b7f5-69de06a0d7c4',
prd: 'Objective: Help users easily create...',
horizon: 'now',
opportunityIds: ['<string>'],
updateTriggeredBy: 'user'
})
};
fetch('https://api.meetsquad.ai/organisations/{orgId}/workspaces/{workspaceId}/solutions/{solutionId}', 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.meetsquad.ai/organisations/{orgId}/workspaces/{workspaceId}/solutions/{solutionId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'systemPrompt' => 'Hello',
'aiProcessingState' => 'FINISHED',
'refinementLog' => [
],
'title' => 'Implement Single Sign-On',
'description' => 'Integrate with OAuth providers to simplify user login experience',
'status' => 'Backlog',
'pros' => [
'Improved security',
'Simplified login flow',
'Reduced password reset requests'
],
'cons' => [
'Requires integration with external providers',
'May add complexity to registration'
],
'ownerId' => 'd4e71c2b-a498-42af-b7f5-69de06a0d7c4',
'prd' => 'Objective: Help users easily create...',
'horizon' => 'now',
'opportunityIds' => [
'<string>'
],
'updateTriggeredBy' => 'user'
]),
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.meetsquad.ai/organisations/{orgId}/workspaces/{workspaceId}/solutions/{solutionId}"
payload := strings.NewReader("{\n \"systemPrompt\": \"Hello\",\n \"aiProcessingState\": \"FINISHED\",\n \"refinementLog\": [],\n \"title\": \"Implement Single Sign-On\",\n \"description\": \"Integrate with OAuth providers to simplify user login experience\",\n \"status\": \"Backlog\",\n \"pros\": [\n \"Improved security\",\n \"Simplified login flow\",\n \"Reduced password reset requests\"\n ],\n \"cons\": [\n \"Requires integration with external providers\",\n \"May add complexity to registration\"\n ],\n \"ownerId\": \"d4e71c2b-a498-42af-b7f5-69de06a0d7c4\",\n \"prd\": \"Objective: Help users easily create...\",\n \"horizon\": \"now\",\n \"opportunityIds\": [\n \"<string>\"\n ],\n \"updateTriggeredBy\": \"user\"\n}")
req, _ := http.NewRequest("PUT", 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.put("https://api.meetsquad.ai/organisations/{orgId}/workspaces/{workspaceId}/solutions/{solutionId}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"systemPrompt\": \"Hello\",\n \"aiProcessingState\": \"FINISHED\",\n \"refinementLog\": [],\n \"title\": \"Implement Single Sign-On\",\n \"description\": \"Integrate with OAuth providers to simplify user login experience\",\n \"status\": \"Backlog\",\n \"pros\": [\n \"Improved security\",\n \"Simplified login flow\",\n \"Reduced password reset requests\"\n ],\n \"cons\": [\n \"Requires integration with external providers\",\n \"May add complexity to registration\"\n ],\n \"ownerId\": \"d4e71c2b-a498-42af-b7f5-69de06a0d7c4\",\n \"prd\": \"Objective: Help users easily create...\",\n \"horizon\": \"now\",\n \"opportunityIds\": [\n \"<string>\"\n ],\n \"updateTriggeredBy\": \"user\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.meetsquad.ai/organisations/{orgId}/workspaces/{workspaceId}/solutions/{solutionId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"systemPrompt\": \"Hello\",\n \"aiProcessingState\": \"FINISHED\",\n \"refinementLog\": [],\n \"title\": \"Implement Single Sign-On\",\n \"description\": \"Integrate with OAuth providers to simplify user login experience\",\n \"status\": \"Backlog\",\n \"pros\": [\n \"Improved security\",\n \"Simplified login flow\",\n \"Reduced password reset requests\"\n ],\n \"cons\": [\n \"Requires integration with external providers\",\n \"May add complexity to registration\"\n ],\n \"ownerId\": \"d4e71c2b-a498-42af-b7f5-69de06a0d7c4\",\n \"prd\": \"Objective: Help users easily create...\",\n \"horizon\": \"now\",\n \"opportunityIds\": [\n \"<string>\"\n ],\n \"updateTriggeredBy\": \"user\"\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"aiProcessingState": "FINISHED",
"refinementLog": [],
"title": "Implement Single Sign-On",
"description": "Integrate with OAuth providers to simplify user login experience",
"status": "Backlog",
"pros": [
"Improved security",
"Simplified login flow",
"Reduced password reset requests"
],
"cons": [
"Requires integration with external providers",
"May add complexity to registration"
],
"hideContent": false,
"createdBy": "generated",
"createdAt": "2025-03-26T22:35:46Z",
"updatedAt": "2025-03-26T22:35:46Z",
"priority": "a0",
"prd": "Objective: Help users easily create...",
"opportunities": [],
"insights": [],
"outcomes": [],
"systemPrompt": "Hello",
"ownerId": "d4e71c2b-a498-42af-b7f5-69de06a0d7c4",
"horizon": "now"
}
}Authorizations
JWT authentication for organization-scoped endpoints.
Path Parameters
Organization ID
Workspace ID
Solution ID
Body
Request schema for updating a solution
System prompt used to generate the requirement
"Hello"
Current state of AI processing
INITIAL, PROCESSING, FINISHED, ERROR "FINISHED"
Log of refinements made to the requirement
Show child attributes
Show child attributes
[]
Title of the solution
"Implement Single Sign-On"
Description of the solution
"Integrate with OAuth providers to simplify user login experience"
Solution status
Backlog, New, Planned, InDevelopment, Complete, Cancelled, Live "Backlog"
List of pros/advantages for this solution
[
"Improved security",
"Simplified login flow",
"Reduced password reset requests"
]
List of cons/disadvantages for this solution
[
"Requires integration with external providers",
"May add complexity to registration"
]
ID of the solution owner
"d4e71c2b-a498-42af-b7f5-69de06a0d7c4"
Product Requirements Document content for the solution
"Objective: Help users easily create..."
Time horizon for the solution
now, next, later "now"
Who triggered the update. If not provided, defaults to 'user'
user, AI "user"
Response
Solution updated successfully
Response containing a single solution
Solution data
Show child attributes
Show child attributes