94 lines
2.9 KiB
YAML
94 lines
2.9 KiB
YAML
openapi: 3.0.0
|
|
info:
|
|
title: Agree-on-Desires API
|
|
version: 1.0.0
|
|
paths:
|
|
/sessions/{sessionId}/responses:
|
|
post:
|
|
summary: Submit a user's response for a session, including "Afraid to Ask" ideas.
|
|
parameters:
|
|
- in: path
|
|
name: sessionId
|
|
required: true
|
|
schema:
|
|
type: string
|
|
description: The ID of the session.
|
|
requestBody:
|
|
required: true
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
userId:
|
|
type: string
|
|
description: The ID of the user submitting the response.
|
|
wants:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: A list of ideas the user wants.
|
|
accepts:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: A list of ideas the user accepts.
|
|
afraidToAsk:
|
|
type: string
|
|
description: A sensitive idea the user is afraid to ask, to be processed privately.
|
|
required:
|
|
- userId
|
|
responses:
|
|
'200':
|
|
description: Response successfully submitted.
|
|
'400':
|
|
description: Invalid input.
|
|
'500':
|
|
description: Internal server error, or semantic matching service unavailable.
|
|
/sessions/{sessionId}/results:
|
|
get:
|
|
summary: Retrieve the harmonized results for a session.
|
|
parameters:
|
|
- in: path
|
|
name: sessionId
|
|
required: true
|
|
schema:
|
|
type: string
|
|
description: The ID of the session.
|
|
responses:
|
|
'200':
|
|
description: Session results retrieved successfully.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
sessionId:
|
|
type: string
|
|
harmonizedIdeas:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: The list of harmonized ideas, including matched "Afraid to Ask" ideas.
|
|
'404':
|
|
description: Session not found.
|
|
'500':
|
|
description: Internal server error.
|
|
/sessions/{sessionId}/terminate:
|
|
post:
|
|
summary: Terminate a session and purge all associated "Afraid to Ask" data.
|
|
parameters:
|
|
- in: path
|
|
name: sessionId
|
|
required: true
|
|
schema:
|
|
type: string
|
|
description: The ID of the session to terminate.
|
|
responses:
|
|
'200':
|
|
description: Session terminated and data purged successfully.
|
|
'404':
|
|
description: Session not found.
|
|
'500':
|
|
description: Internal server error.
|