Skip to content

Studies API

All URIs are relative to https://api.syntheticusers.com/api/v1

MethodHTTP requestDescription
createStudyPOST /studiesCreate Study
deleteStudyDELETE /studies/Delete Study
editStudyPATCH /studies/Edit Study
generateKnowledgeGraphPOST /studies/{study_id}/knowledge_graphGenerate Knowledge Graph
generateSummaryPOST /studies/{study_id}/summaryGenerate Summary
getStudyGET /studies/Get Study
getStudyPdfGET /studies/{study_id}/pdfDownload Study as PDF
interviewPOST /studies/{study_id}/interviewInterview
listStudiesGET /studiesList Studies
regenerateAllInterviewsPOST /studies/{study_id}/regenerateRegenerate All Interviews
studyFollowUpPOST /studies/{study_id}/follow_upStudy Follow Up

createStudy

Study createStudy(studyCreate)

Example

typescript
import { createConfiguration, StudiesApi } from '';
import type { StudiesApiCreateStudyRequest } from '';

const configuration = createConfiguration();
const apiInstance = new StudiesApi(configuration);

const request: StudiesApiCreateStudyRequest = {
  
  studyCreate: {
    description: "description_example",
    projectId: "projectId_example",
    createdAt: new Date('1970-01-01T00:00:00.00Z'),
    bookmarked: true,
    language: "language_example",
    audiences: [
      "audiences_example",
    ],
    problems: [
      "problems_example",
    ],
    files: [
      "files_example",
    ],
    progress: {
      total: 1,
      completed: 1,
      failed: 1,
    },
    status: "status_example",
    solutionId: "solutionId_example",
    researchGoalId: "researchGoalId_example",
    knowledgeGraphs: [
      "knowledgeGraphs_example",
    ],
    strategy: "solution_feedback",
    interviewCount: 1,
    interviews: [
      "interviews_example",
    ],
  },
};

const data = await apiInstance.createStudy(request);
console.log('API called successfully. Returned data:', data);

Parameters

NameTypeDescriptionNotes
studyCreateStudyCreate

Return type

Study

Authorization

HTTPBearer

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

HTTP response details

Status codeDescriptionResponse headers
200Successful Response-
422Validation Error-

[Back to top] [Back to API list] [Back to SDK]

deleteStudy

any deleteStudy()

Example

typescript
import { createConfiguration, StudiesApi } from '';
import type { StudiesApiDeleteStudyRequest } from '';

const configuration = createConfiguration();
const apiInstance = new StudiesApi(configuration);

const request: StudiesApiDeleteStudyRequest = {
  
  studyId: "study_id_example",
};

const data = await apiInstance.deleteStudy(request);
console.log('API called successfully. Returned data:', data);

Parameters

NameTypeDescriptionNotes
studyId[string]defaults to undefined

Return type

any

Authorization

HTTPBearer

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status codeDescriptionResponse headers
200Successful Response-
422Validation Error-

[Back to top] [Back to API list] [Back to SDK]

editStudy

Study editStudy(studyUpdate)

Example

typescript
import { createConfiguration, StudiesApi } from '';
import type { StudiesApiEditStudyRequest } from '';

const configuration = createConfiguration();
const apiInstance = new StudiesApi(configuration);

const request: StudiesApiEditStudyRequest = {
  
  studyId: "study_id_example",
  
  studyUpdate: {
    description: "description_example",
    projectId: "projectId_example",
    createdAt: new Date('1970-01-01T00:00:00.00Z'),
    bookmarked: true,
    language: "language_example",
    audiences: [
      "audiences_example",
    ],
    files: [
      "files_example",
    ],
    progress: {
      total: 1,
      completed: 1,
      failed: 1,
    },
    status: "status_example",
    knowledgeGraphs: [
      "knowledgeGraphs_example",
    ],
    strategy: "solution_feedback",
    interviewCount: 1,
    interviews: [
      "interviews_example",
    ],
  },
};

const data = await apiInstance.editStudy(request);
console.log('API called successfully. Returned data:', data);

Parameters

NameTypeDescriptionNotes
studyUpdateStudyUpdate
studyId[string]defaults to undefined

Return type

Study

Authorization

HTTPBearer

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

HTTP response details

Status codeDescriptionResponse headers
200Successful Response-
422Validation Error-

[Back to top] [Back to API list] [Back to SDK]

generateKnowledgeGraph

KnowledgeGraph generateKnowledgeGraph()

Example

typescript
import { createConfiguration, StudiesApi } from '';
import type { StudiesApiGenerateKnowledgeGraphRequest } from '';

const configuration = createConfiguration();
const apiInstance = new StudiesApi(configuration);

const request: StudiesApiGenerateKnowledgeGraphRequest = {
  
  studyId: "study_id_example",
};

const data = await apiInstance.generateKnowledgeGraph(request);
console.log('API called successfully. Returned data:', data);

Parameters

NameTypeDescriptionNotes
studyId[string]defaults to undefined

Return type

KnowledgeGraph

Authorization

HTTPBearer

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status codeDescriptionResponse headers
200Successful Response-
422Validation Error-

[Back to top] [Back to API list] [Back to SDK]

generateSummary

Summary generateSummary(summaryCreate)

Example

typescript
import { createConfiguration, StudiesApi } from '';
import type { StudiesApiGenerateSummaryRequest } from '';

const configuration = createConfiguration();
const apiInstance = new StudiesApi(configuration);

const request: StudiesApiGenerateSummaryRequest = {
  
  studyId: "study_id_example",
  
  summaryCreate: {
    summarizationFocus: "summarizationFocus_example",
    preGenerated: true,
  },
};

const data = await apiInstance.generateSummary(request);
console.log('API called successfully. Returned data:', data);

Parameters

NameTypeDescriptionNotes
summaryCreateSummaryCreate
studyId[string]defaults to undefined

Return type

Summary

Authorization

HTTPBearer

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

HTTP response details

Status codeDescriptionResponse headers
200Successful Response-
422Validation Error-

[Back to top] [Back to API list] [Back to SDK]

getStudy

Study getStudy()

Example

typescript
import { createConfiguration, StudiesApi } from '';
import type { StudiesApiGetStudyRequest } from '';

const configuration = createConfiguration();
const apiInstance = new StudiesApi(configuration);

const request: StudiesApiGetStudyRequest = {
  
  studyId: "study_id_example",
};

const data = await apiInstance.getStudy(request);
console.log('API called successfully. Returned data:', data);

Parameters

NameTypeDescriptionNotes
studyId[string]defaults to undefined

Return type

Study

Authorization

HTTPBearer

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status codeDescriptionResponse headers
200Successful Response-
422Validation Error-

[Back to top] [Back to API list] [Back to SDK]

getStudyPdf

HttpFile getStudyPdf()

Generates and returns a PDF report containing the study details, latest summary, and interview transcripts.

Example

typescript
import { createConfiguration, StudiesApi } from '';
import type { StudiesApiGetStudyPdfRequest } from '';

const configuration = createConfiguration();
const apiInstance = new StudiesApi(configuration);

const request: StudiesApiGetStudyPdfRequest = {
    // The ID of the study to export as PDF.
  studyId: "study_id_example",
};

const data = await apiInstance.getStudyPdf(request);
console.log('API called successfully. Returned data:', data);

Parameters

NameTypeDescriptionNotes
studyId[string]The ID of the study to export as PDF.defaults to undefined

Return type

HttpFile

Authorization

HTTPBearer

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/pdf, application/json

HTTP response details

Status codeDescriptionResponse headers
200Returns the PDF export of the study-
404Study not found-
500Error generating PDF-
422Validation Error-

[Back to top] [Back to API list] [Back to SDK]

interview

Study interview(studyInterviews)

Start interviews for a study. Two modes: 1. Use existing GSUs: Provide 'syntheticUsers' (List[UUID]) 2. Generate + Interview: Provide 'quantity' only In Mode 2, audience/problems/research_goal/files are automatically pulled from the study.

Example

typescript
import { createConfiguration, StudiesApi } from '';
import type { StudiesApiInterviewRequest } from '';

const configuration = createConfiguration();
const apiInstance = new StudiesApi(configuration);

const request: StudiesApiInterviewRequest = {
  
  studyId: "study_id_example",
  
  studyInterviews: {
    syntheticUsers: [
      "syntheticUsers_example",
    ],
    quantity: 1,
    customScript: "customScript_example",
    ongoingWalkthrough: true,
  },
};

const data = await apiInstance.interview(request);
console.log('API called successfully. Returned data:', data);

Parameters

NameTypeDescriptionNotes
studyInterviewsStudyInterviews
studyId[string]defaults to undefined

Return type

Study

Authorization

HTTPBearer

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

HTTP response details

Status codeDescriptionResponse headers
200Successful Response-
422Validation Error-

[Back to top] [Back to API list] [Back to SDK]

listStudies

PageStudy listStudies()

Example

typescript
import { createConfiguration, StudiesApi } from '';
import type { StudiesApiListStudiesRequest } from '';

const configuration = createConfiguration();
const apiInstance = new StudiesApi(configuration);

const request: StudiesApiListStudiesRequest = {
    // Comma-separated list of studies IDs (optional)
  id: "id_example",
    // Comma-separated list of project IDs (optional)
  projectId: "projectId_example",
    // Comma-separated list of audiences IDs (optional)
  audienceId: "audienceId_example",
    // Status to filter by (optional)
  status: "status_example",
    // Page number (optional)
  page: 1,
    // Page size (optional)
  size: 50,
};

const data = await apiInstance.listStudies(request);
console.log('API called successfully. Returned data:', data);

Parameters

NameTypeDescriptionNotes
id[string]Comma-separated list of studies IDs(optional) defaults to undefined
projectId[string]Comma-separated list of project IDs(optional) defaults to undefined
audienceId[string]Comma-separated list of audiences IDs(optional) defaults to undefined
status[string]Status to filter by(optional) defaults to undefined
page[number]Page number(optional) defaults to 1
size[number]Page size(optional) defaults to 50

Return type

PageStudy

Authorization

HTTPBearer

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status codeDescriptionResponse headers
200Successful Response-
422Validation Error-

[Back to top] [Back to API list] [Back to SDK]

regenerateAllInterviews

Study regenerateAllInterviews()

Example

typescript
import { createConfiguration, StudiesApi } from '';
import type { StudiesApiRegenerateAllInterviewsRequest } from '';

const configuration = createConfiguration();
const apiInstance = new StudiesApi(configuration);

const request: StudiesApiRegenerateAllInterviewsRequest = {
  
  studyId: "study_id_example",
};

const data = await apiInstance.regenerateAllInterviews(request);
console.log('API called successfully. Returned data:', data);

Parameters

NameTypeDescriptionNotes
studyId[string]defaults to undefined

Return type

Study

Authorization

HTTPBearer

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status codeDescriptionResponse headers
200Successful Response-
422Validation Error-

[Back to top] [Back to API list] [Back to SDK]

studyFollowUp

Array<Conversation> studyFollowUp(conversationCreate)

Create follow-up questions for all interviews in a study.

Example

typescript
import { createConfiguration, StudiesApi } from '';
import type { StudiesApiStudyFollowUpRequest } from '';

const configuration = createConfiguration();
const apiInstance = new StudiesApi(configuration);

const request: StudiesApiStudyFollowUpRequest = {
  
  studyId: "study_id_example",
  
  conversationCreate: {
    message: "message_example",
  },
};

const data = await apiInstance.studyFollowUp(request);
console.log('API called successfully. Returned data:', data);

Parameters

NameTypeDescriptionNotes
conversationCreateConversationCreate
studyId[string]defaults to undefined

Return type

Array<Conversation>

Authorization

HTTPBearer

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

HTTP response details

Status codeDescriptionResponse headers
200Successful Response-
422Validation Error-

[Back to top] [Back to API list] [Back to SDK]

Released under the MIT License.