{"openapi":"3.1.0","info":{"title":"Thymia API","description":"An API to access the Thymia products.\n\n<details>\n  <summary><i>Disclaimers & Warranties</i></summary>\n  \nTHE SERVICE AND ALL MATERIALS AND CONTENT AVAILABLE THROUGH THE SERVICE ARE PROVIDED \"AS IS\" AND ON AN \"AS AVAILABLE\" BASIS. THYMIA DISCLAIMS ALL WARRANTIES OF ANY KIND, WHETHER EXPRESS OR IMPLIED, RELATING TO THE SERVICE AND ALL MATERIALS AND CONTENT AVAILABLE THROUGH THE SERVICE, INCLUDING: (A) ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE, QUIET ENJOYMENT, OR NON-INFRINGEMENT; AND (B) ANY WARRANTY ARISING OUT OF COURSE OF DEALING, USAGE, OR TRADE. THYMIA DOES NOT WARRANT THAT THE SERVICE OR ANY PORTION OF THE SERVICE, OR ANY MATERIALS OR CONTENT OFFERED THROUGH THE SERVICE, WILL BE UNINTERRUPTED, SECURE, OR FREE OF ERRORS, VIRUSES, OR OTHER HARMFUL COMPONENTS, AND THYMIA DOES NOT WARRANT THAT ANY OF THOSE ISSUES WILL BE CORRECTED.\n\nIT IS HEREBY EXPRESSLY CLARIFIED THAT, THE INFORMATION THAT YOU OBTAIN OR RECEIVE FROM THYMIA ENTITIES OR OTHERWISE ON THE SERVICE IS FOR INFORMATIONAL PURPOSES ONLY. THYMIA MAKES NO GUARANTEES, REPRESENTATIONS OR WARRANTIES, WHETHER EXPRESSED OR IMPLIED, WITH RESPECT TO THE PROFESSIONAL QUALIFICATIONS, QUALITY OF WORK, EXPERTISE OR OTHER INFORMATION PROVIDED ON THE SERVICE. NO ADVICE OR INFORMATION, WHETHER ORAL OR WRITTEN, OBTAINED BY YOU FROM THE SERVICE OR THYMIA ENTITIES OR ANY MATERIALS OR CONTENT AVAILABLE THROUGH THE SERVICE WILL CREATE ANY WARRANTY REGARDING ANY OF THE THYMIA ENTITIES OR THE SERVICE. WE ARE NOT RESPONSIBLE FOR ANY DAMAGE THAT MAY RESULT FROM THE SERVICE AND YOUR DEALING WITH ANY OTHER SERVICE USER. YOU UNDERSTAND AND AGREE THAT YOU USE ANY PORTION OF THE SERVICE AT YOUR OWN DISCRETION AND RISK, AND THAT WE ARE NOT RESPONSIBLE FOR ANY DAMAGE TO YOUR PROPERTY (INCLUDING YOUR COMPUTER SYSTEM OR MOBILE DEVICE USED IN CONNECTION WITH THE SERVICE) OR ANY LOSS OF DATA.\n\nPLEASE NOTE THAT THE CONTENT, TEXT, DATA, GRAPHICS, IMAGES, INFORMATION, SUGGESTIONS, GUIDANCE, AND OTHER MATERIAL THAT MAY BE AVAILABLE ON THE SERVICE MAY NOT BE PROVIDED BY LICENSED MEDICAL PRACTITIONERS OR BY QUALIFIED INDIVIDUALS FROM THE MEDICAL PROFESSION. THE PROVISION OF SUCH INFORMATION DOES NOT CREATE A DOCTOR-PATIENT RELATIONSHIP BETWEEN THYMIA AND YOU, AND DOES NOT CONSTITUTE AN OPINION, MEDICAL ADVICE, OR DIAGNOSIS OR TREATMENT OF ANY PARTICULAR CONDITION, BUT IS ONLY PROVIDED TO ASSIST YOU WITH RELEVANT INFORMATION AND APPROACHING APPROPRIATE HEALTHCARE AND MEDICAL PROFESSIONALS. THYMIA EXPRESSLY DISCLAIMS AND EXCLUDES ALL WARRANTIES IN RELATION TO ANY DIAGNOSTIC SERVICE, TREATMENT AND/OR CLINICAL SERVICE MADE AVAILABLE TO THE USER BY ANY THIRD PARTY IN CONNECTION WITH ANY INFORMATION PROVIDED ON THE SERVICE.\n\nTHE INFORMATION PROVIDED ON THE SERVICE HAS NOT BEEN EVALUATED AND/OR APPROVED BY MEDICAL PROFESSIONALS, MEDICAL BODIES OR ANY OTHER STATUTORY BODY IN THE UK OR EU, AND IS NOT INTENDED TO DIAGNOSE, TREAT, CURE OR PREVENT ANY ILLNESS, CONDITION OR OTHER HEALTH ISSUE. INFORMATION PROVIDED ON THE SERVICE IS NOT INTENDED TO BE, AND SHOULD NOT BE USED IN THE PLACE OF, THE ADVICE OF MEDICAL PROFESSIONALS OR ANY INFORMATION PROVIDED ON ANY PRODUCT PACKAGING OR LABEL. ANY INFORMATION PROVIDED ON THE SERVICE IS NOT INTENDED TO SERVE AS A SUBSTITUTE FOR CLINICAL ADVICE AND SHOULD NOT BE RELIED UPON WHILE MAKING TREATMENT RELATED DECISIONS. FOR ADVICE ON MEDICAL ISSUES YOU SHOULD ALWAYS CONSULT YOUR DOCTOR OR OTHER QUALIFIED HEALTH CARE PROFESSIONAL. YOU MUST OBTAIN PROFESSIONAL OR SPECIALIST ADVICE BEFORE TAKING, OR REFRAINING FROM, ANY ACTION ON THE BASIS OF THE INFORMATION OR CONTENT MADE AVAILABLE VIA THE SERVICE.\n\nTHYMIA DOES NOT PROVIDE MEDICAL OR OTHER LICENSED PROFESSIONAL ADVICE. ANY CONTENT ACCESSED THROUGH THE SERVICE IS FOR INFORMATIONAL PURPOSES ONLY AND IS NOT INTENDED TO COVER ALL POSSIBLE USES, DIRECTIONS, PRECAUTIONS, OR ADVERSE EFFECTS. THE SERVICE IS NOT INTENDED TO BE A SUBSTITUTE FOR PROFESSIONAL MEDICAL ADVICE, DIAGNOSIS, OR TREATMENT. THE MATERIALS SHOULD NOT BE USED DURING A MEDICAL EMERGENCY OR FOR THE DIAGNOSIS OR TREATMENT OF ANY MEDICAL CONDITION. PLEASE CONSULT YOUR DOCTOR OR OTHER QUALIFIED HEALTH CARE PROVIDER IF YOU HAVE ANY QUESTIONS ABOUT A MEDICAL CONDITION, OR BEFORE COMMENCING OR DISCONTINUING ANY COURSE OF TREATMENT. DO NOT IGNORE OR DELAY OBTAINING PROFESSIONAL MEDICAL ADVICE BECAUSE OF INFORMATION ACCESSED THROUGH THE SERVICE. CALL THE EMERGENCY RESPONSE NUMBER OR YOUR DOCTOR FOR ALL MEDICAL EMERGENCIES.\n\nYOU ARE HEREBY NOTIFIED THAT VOICE AND BEHAVIOUR, PATIENT SYMPTOMS, FITNESS AND MEDICAL HISTORY, MEDICINES AND/OR MEDICINAL PRODUCTS AND OTHER RELATED INFORMATION DIFFERS FROM COUNTRY TO COUNTRY AND VARIES FROM REGION TO REGION.\n\n</details>\n","version":"1.0.0"},"paths":{"/v1/models/mental-wellness":{"post":{"tags":["Mental Wellness - Thymia Helios"],"summary":"Run the model on an existing recording","description":"Create a new run of the Mental Wellness model for a specific user, with an existing file as input. Model runs require a\nrecording of the user speaking, as well as some metadata about the user and the recording.\n\nThe response contains:\n * An upload url which the contents of an existing recording can be uploaded to via a `PUT` call.\n * The id of the new model run which can be used to poll for results **after the recording has been uploaded**.","operationId":"create_model_run_with_upload_v1_models_mental_wellness_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MentalWellnessModelRunUploadCreate"}}},"required":true},"responses":{"200":{"description":"Details of new model run created, including an upload link for the recording to input to the Mental Wellness model","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MentalWellnessModelRunCreateUploadResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"APIKeyHeader":[]}]}},"/v1/models/mental-wellness/{model_run_id}":{"get":{"tags":["Mental Wellness - Thymia Helios"],"summary":"Get model run status & results","description":"Retrieve the details of an existing Mental Wellness model run, including results if they are available.","operationId":"get_model_run_v1_models_mental_wellness__model_run_id__get","parameters":[{"required":true,"schema":{"type":"string","format":"uuid","title":"Model Run Id"},"name":"model_run_id","in":"path"}],"responses":{"200":{"description":"Details of model run's current state","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MentalWellnessModelRunResponse"}}}},"404":{"description":"Model run not found"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"APIKeyHeader":[]}]}},"/v1/models/mental-wellness-activity":{"post":{"tags":["Mental Wellness - Thymia Helios"],"summary":"Run the model using the Thymia Activity Plugin","description":"Create a new run of the Mental Wellness model for a specific user, using the Thymia Activity Plugin to host an activity and capture a recording.\n\nThe response contains:\n * A link for the user to perform an activity. The link should then be embedded in the Thymia Activity Plugin.\n   Once the activity is completed, the recording of it will be used automatically as input to the model.\n * The id of the new model run which can be used to poll for results **after the activity has been completed**.","operationId":"create_model_run_with_activity_v1_models_mental_wellness_activity_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MentalWellnessModelRunActivityCreate"}}},"required":true},"responses":{"200":{"description":"Details of new model run created, including a link to a thymia activity.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MentalWellnessModelRunCreateActivityResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"APIKeyHeader":[]}]}},"/v1/user-data/{upload_type}":{"post":{"tags":["User Data"],"summary":"Upload User Data","description":"Upload JSON data of a certain type gathered about a specific user.\n\n> **Warning**:\n> * To use this feature, please contact thymia to agree an upload format and type.\n> * Please do not upload any personally identifiable data.","operationId":"upload_user_data_v1_user_data__upload_type__post","parameters":[{"required":true,"schema":{"type":"string","title":"Upload Type"},"name":"upload_type","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserDataUpload"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserDataUploadResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"APIKeyHeader":[]}]}},"/v1/questionnaires":{"post":{"tags":["Questionnaires"],"summary":"Create a new questionnaire for a user to answer","description":"Create a questionnaire for a user to answer using a thymia activity.\n\n> **Warning**: Before using this endpoint, please contact thymia to configure the questionnaires you want your users to complete.\n\nThe response contains:\n * A link to a thymia activity that allows the user to complete the questionnaire.\n * The id of the questionnaire which can be used to retrieve results **after the questionnaire has been completed**.","operationId":"create_questionnaire_v1_questionnaires_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuestionnaireCreate"}}},"required":true},"responses":{"200":{"description":"Details of questionnaire created, including a link to a thymia activity.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuestionnaireCreateResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"APIKeyHeader":[]}]}},"/v1/questionnaires/{questionnaire_id}":{"get":{"tags":["Questionnaires"],"summary":"Get questionnaire status and results","description":"Retrieves the status of an existing questionnaire, including results if they are available.","operationId":"get_questionnaire_v1_questionnaires__questionnaire_id__get","parameters":[{"required":true,"schema":{"type":"string","format":"uuid","title":"Questionnaire Id"},"name":"questionnaire_id","in":"path"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuestionnaireResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"APIKeyHeader":[]}]}},"/v1/account":{"get":{"tags":["Account"],"summary":"Get account details","description":"Retrieve details of your account with thymia.\n\n> **Note**:\n> More fields to be added to the response in a later release of the API.","operationId":"get_account_v1_account_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountResponse"}}}}},"security":[{"APIKeyHeader":[]}]}},"/v1/models/apollo":{"post":{"tags":["Apollo"],"summary":"Run the Apollo model on existing recordings","description":"Create a new run of the Apollo model for a specific user. Model runs require two recordings:\n1. A mood question recording - for example, the user's response to \"How are you feeling today?\"\n2. A read-aloud recording - for example, the user reading a standard passage\n\n- For assistance, please contact our support team.\n\nThe response contains:\n * Upload urls for both recordings which can be uploaded to via `PUT` requests\n * The id of the new model run which can be used to poll for results **after both recordings have been uploaded**\n\n> **Note**:\n> * Both recordings must be uploaded for the model to start processing\n> * Each recording must contain at least 15 seconds of speech and be under 3 minutes in length\n> * Supported audio formats are FLAC, MP3, MP4, Ogg, WebM, WAV\n> * Each upload URL is valid for 1 hour","operationId":"create_apollo_model_run_v1_models_apollo_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApolloModelRunCreate"}}},"required":true},"responses":{"200":{"description":"Details of new model run created, including upload links for the two required recordings","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApolloModelRunCreateResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"APIKeyHeader":[]}]}},"/v1/models/apollo/{model_run_id}":{"get":{"tags":["Apollo"],"summary":"Get Apollo model run status & results","description":"Retrieve the details of an existing Apollo model run, including results if they are available.","operationId":"get_apollo_model_run_v1_models_apollo__model_run_id__get","parameters":[{"required":true,"schema":{"type":"string","format":"uuid","title":"Model Run Id"},"name":"model_run_id","in":"path"}],"responses":{"200":{"description":"Details of model run's current state","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApolloModelRunResponse"}}}},"404":{"description":"Model run not found"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"APIKeyHeader":[]}]}},"/v1/calls":{"post":{"tags":["Voice Agent (Beta)"],"summary":"Create a new call","description":"Create a new voice agent call session.","operationId":"create_call_v1_calls_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VoiceAgentCallCreate"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VoiceAgentCallCreateResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"APIKeyHeader":[]}]}},"/v1/calls/{call_id}":{"get":{"tags":["Voice Agent (Beta)"],"summary":"Get call status & results","description":"Retrieve the details of a call, including model run results if they are available.","operationId":"get_call_v1_calls__call_id__get","parameters":[{"required":true,"schema":{"type":"string","format":"uuid","title":"Call Id"},"name":"call_id","in":"path"}],"responses":{"200":{"description":"Details of a call's current state","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VoiceAgentCallResponse"}}}},"404":{"description":"Call not found"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"APIKeyHeader":[]}]}}},"components":{"schemas":{"Accent":{"type":"string","enum":["ID","NG","KE"],"title":"Accent","description":"An enumeration."},"AccountResponse":{"properties":{"id":{"type":"string","title":"Id","description":"The id of your account"},"features":{"items":{"type":"string"},"type":"array","title":"Features","description":"A list of enabled for the used API key"}},"type":"object","required":["id","features"],"title":"AccountResponse"},"ApolloErrorCode":{"type":"string","enum":["ERR_RECORDING_INVALID_FORMAT","ERR_RECORDING_TOO_SHORT","ERR_RECORDING_TOO_LONG","ERR_TRANSCRIPTION_FAILED","ERR_INTERNAL"],"title":"ApolloErrorCode","description":"An enumeration."},"ApolloModelRunCreate":{"properties":{"user":{"allOf":[{"$ref":"#/components/schemas/UserDetails"}],"title":"User","description":"The user that this model run is being submitted for"},"language":{"allOf":[{"$ref":"#/components/schemas/LanguageCode"}],"title":"Language","description":"The code of the language being spoken by the user in the recordings to be uploaded","example":"en-GB"},"deleteData":{"type":"boolean","title":"Delete Data","description":"Boolean flag indicating if user data is to be deleted after the completion of the model run. If True, the recordings, model inputs and model results will be deleted 12 hrs after the model run completes. Attempts to retrieve results after this time will receive a 404 error.","default":false}},"type":"object","required":["user","language"],"title":"ApolloModelRunCreate"},"ApolloModelRunCreateResponse":{"properties":{"id":{"type":"string","format":"uuid","title":"Model run id","description":"The id of the newly created model run"},"uploadUrls":{"$ref":"#/components/schemas/ApolloUploadUrls"}},"type":"object","required":["id","uploadUrls"],"title":"ApolloModelRunCreateResponse"},"ApolloModelRunResponse":{"properties":{"id":{"type":"string","format":"uuid","title":"Model run id","description":"The id of the existing model run"},"createdAt":{"type":"string","format":"date-time","title":"Created at time","description":"When the model run was submitted to the API","example":"2019-08-24T14:15:22Z"},"status":{"allOf":[{"$ref":"#/components/schemas/ModelRunStatus"}],"description":"Current status of the model run. Possible values:\n * `CREATED`: Model run created; Waiting for files to be uploaded or thymia activities to be completed\n * `RUNNING`: All input to model has been supplied and the model is being executed\n * `COMPLETE_OK`: Model execution completed ok and results are available\n * `COMPLETE_ERROR`: Model execution completed with error and no results available\n    ","example":"COMPLETE_OK"},"runAt":{"type":"string","format":"date-time","title":"Run at time","description":"The time the model run started executing and the status changed to `RUNNING`. This is after all input to the model has been supplied"},"completedAt":{"type":"string","format":"date-time","title":"Completed at time","description":"When the model run finished processing and either results or an error reason are available; only populated once the model run completes","example":"2019-08-24T14:16:000Z"},"errorReason":{"type":"string","title":"Error reason","description":"Only populated if the model run ended with `COMPLETE_ERROR` status"},"warnings":{"items":{"type":"string"},"type":"array","title":"Warnings","description":"Contain warnings about potential issues that occurred during the model run."},"userLabel":{"type":"string","title":"User label","description":"Label of the user that this model run was submitted for"},"results":{"type":"object","title":"Apollo run results","description":"Model results containing mental health indicators. Only populated if the model run ended with `COMPLETE_OK` status.\n\nResults include:\n- **disorders**: Depression and anxiety assessments with probability (0-1) and severity (0-1) scores\n- **symptoms**: Detailed symptom breakdowns for each disorder, including:\n  - Depression symptoms: anhedonia, low mood, sleep issues, low energy, appetite issues, worthlessness, concentration issues, psychomotor issues\n  - Anxiety symptoms: nervousness, uncontrollable worry, excessive worry, trouble relaxing, restlessness, irritability, dread\n  - Each symptom includes severity (0-1) and distribution across none/mild/moderate/severe categories","example":{"disorders":{"depression":{"probability":0.4067141389309715,"severity":0.4132388744110295},"anxiety":{"probability":0.47175616834793105,"severity":0.46294827856683424}},"symptoms":{"depression":{"anhedonia":{"severity":0.46184084704582423,"distribution":{"none":0.24197039159529662,"mild":0.33255350122191146,"moderate":0.2234592816328142,"severe":0.2020168255499776}},"lowmood":{"severity":0.40891653727822747,"distribution":{"none":0.35240554066126856,"mild":0.2653016782309672,"moderate":0.18543040971957758,"severe":0.19686237138818666}},"sleepissues":{"severity":0.6094861501812012,"distribution":{"none":0.1410383730497576,"mild":0.21450948727434468,"moderate":0.31940745575843443,"severe":0.32504468391746333}},"lowenergy":{"severity":0.4080467716870091,"distribution":{"none":0.2465850339598515,"mild":0.4124245852974307,"moderate":0.21125541246455634,"severe":0.1297349682781613}},"appetiteissues":{"severity":0.3116398948698012,"distribution":{"none":0.46100935482842137,"mild":0.26781612021409124,"moderate":0.14642001047714992,"severe":0.1247545144803375}},"worthlessnessissues":{"severity":0.2639105079099775,"distribution":{"none":0.5283513711504902,"mild":0.25618082569043343,"moderate":0.1108527114377303,"severe":0.10461509172134617}},"concentrationissues":{"severity":0.5055735610043838,"distribution":{"none":0.2155407066482807,"mild":0.28576732944757405,"moderate":0.26512253814685866,"severe":0.2335694257572866}},"psychomotorissues":{"severity":0.3364967253118117,"distribution":{"none":0.4546550374827019,"mild":0.22981182358117028,"moderate":0.16692106445411847,"severe":0.1486120744820093}}},"anxiety":{"nervousness":{"severity":0.48281020556845206,"distribution":{"none":0.2581415065283512,"mild":0.2806762383950776,"moderate":0.21579238691943517,"severe":0.24538986815713615}},"uncontrollableworry":{"severity":0.37084304502323606,"distribution":{"none":0.3749962195524081,"mild":0.29448429664400494,"moderate":0.1735136129850577,"severe":0.15700587081852932}},"excessiveworry":{"severity":0.38841342182687094,"distribution":{"none":0.32929279938104206,"mild":0.3356483359758936,"moderate":0.1755846644244737,"severe":0.15947420021859068}},"troublerelaxing":{"severity":0.6678929399237447,"distribution":{"none":0.1026108764334131,"mild":0.1720327504635266,"moderate":0.3444230500014736,"severe":0.3809333231015867}},"restlessness":{"severity":0.48338808178548404,"distribution":{"none":0.2545397514505825,"mild":0.26975254891838296,"moderate":0.2467114024550342,"severe":0.22899629717600023}},"irritability":{"severity":0.3970791626763033,"distribution":{"none":0.3218806625247734,"mild":0.32670323997606787,"moderate":0.18971404444463374,"severe":0.1617020530545248}},"dread":{"severity":0.450211093163748,"distribution":{"none":0.30946646688056556,"mild":0.24927688874671267,"moderate":0.22241354237363423,"severe":0.21884310199908763}}}}}},"report":{"allOf":[{"$ref":"#/components/schemas/ApolloReport"}],"title":"Report URLs","description":"URLs to access the Apollo report. Only populated if the model run ended with `COMPLETE_OK` status"},"errorCode":{"allOf":[{"$ref":"#/components/schemas/ApolloErrorCode"}],"title":"Error code","description":"Only populated if the model run ended with `COMPLETE_ERROR` status. Meaning of each error code:\n* `ERR_RECORDING_INVALID_FORMAT` - One or more recordings supplied are in an unsupported format.\n* `ERR_RECORDING_TOO_SHORT` - One or more recordings supplied contained less than the minimum required amount of speech.\n* `ERR_RECORDING_TOO_LONG` - One or more recordings supplied exceeded the maximum allowed length.\n* `ERR_TRANSCRIPTION_FAILED` - Couldn't determine speech in one or more recordings supplied.\n* `ERR_INTERNAL` - An internal error occurred."},"deleteData":{"type":"boolean","title":"Delete Data","description":"Boolean flag indicating if user data is to be deleted after the completion of the model run."},"model":{"type":"string","title":"Model","description":"The version of model used in the model run."}},"type":"object","required":["id","createdAt","status","userLabel","deleteData"],"title":"ApolloModelRunResponse"},"ApolloReport":{"properties":{"viewUrl":{"type":"string","title":"View URL","description":"URL to view the Apollo report","example":"https://reports.thymia.ai/v1/reports/123e4567-e89b-12d3-a456-426614174000?token=..."},"pdfUrl":{"type":"string","title":"PDF URL","description":"URL to download the Apollo report as PDF","example":"https://reports.thymia.ai/v1/reports/123e4567-e89b-12d3-a456-426614174000/pdf?token=..."},"accessExpiresAt":{"type":"string","title":"Access expires at","description":"ISO 8601 formatted timestamp when the report URLs will expire","example":"2024-12-31T23:59:59Z"}},"type":"object","required":["viewUrl","pdfUrl","accessExpiresAt"],"title":"ApolloReport"},"ApolloUploadUrls":{"properties":{"moodQuestionUploadUrl":{"type":"string","title":"Mood question upload url","description":"The url to upload the mood question recording to via a `PUT` request. Valid for 1 hour","example":"https://path/to/upload/mood"},"readAloudUploadUrl":{"type":"string","title":"Read aloud upload url","description":"The url to upload the read-aloud recording to via a `PUT` request. Valid for 1 hour","example":"https://path/to/upload/read"}},"type":"object","required":["moodQuestionUploadUrl","readAloudUploadUrl"],"title":"ApolloUploadUrls"},"BirthSex":{"type":"string","enum":["MALE","FEMALE","INTERSEX","UNKNOWN"],"title":"BirthSex","description":"An enumeration."},"CompletedQuestionnaireDetails":{"properties":{"completedAt":{"type":"string","format":"date-time","title":"Completed at time","description":"When the questionnaire was completed","example":"2019-08-24T14:15:22Z"},"name":{"type":"string","title":"Questionnaire name","description":"Name of the questionnaire as seen by the user completing it"},"questions":{"type":"object","title":"Questions","description":"Definition of the questions asked in the questionnaire"},"answers":{"type":"object","title":"Answers","description":"Answers given by user. In case of multiple choice questions, answers refer to options by id."},"scoreDetails":{"allOf":[{"$ref":"#/components/schemas/QuestionnaireScoreDetails"}],"title":"Score details","description":"Details of the score given to this questionnaire response. Only applies to questionnaires that can be scored"}},"type":"object","required":["completedAt","name","questions","answers"],"title":"CompletedQuestionnaireDetails"},"DataDeletionType":{"type":"string","enum":["RECORDINGS"],"title":"DataDeletionType","description":"An enumeration."},"EmotionsErrorCode":{"type":"string","enum":["ERR_RECORDING_TOO_SHORT","ERR_RECORDING_TOO_LONG","ERR_INTERNAL"],"title":"EmotionsErrorCode","description":"An enumeration."},"EmotionsModelRunResponse":{"properties":{"id":{"type":"string","format":"uuid","title":"Model run id","description":"The id of the existing model run"},"createdAt":{"type":"string","format":"date-time","title":"Created at time","description":"When the model run was submitted to the API","example":"2019-08-24T14:15:22Z"},"status":{"allOf":[{"$ref":"#/components/schemas/ModelRunStatus"}],"description":"Current status of the model run. Possible values:\n * `CREATED`: Model run created; Waiting for files to be uploaded or thymia activities to be completed\n * `RUNNING`: All input to model has been supplied and the model is being executed\n * `COMPLETE_OK`: Model execution completed ok and results are available\n * `COMPLETE_ERROR`: Model execution completed with error and no results available\n    ","example":"COMPLETE_OK"},"runAt":{"type":"string","format":"date-time","title":"Run at time","description":"The time the model run started executing and the status changed to `RUNNING`. This is after all input to the model has been supplied"},"completedAt":{"type":"string","format":"date-time","title":"Completed at time","description":"When the model run finished processing and either results or an error reason are available; only populated once the model run completes","example":"2019-08-24T14:16:000Z"},"errorReason":{"type":"string","title":"Error reason","description":"Only populated if the model run ended with `COMPLETE_ERROR` status"},"warnings":{"items":{"type":"string"},"type":"array","title":"Warnings","description":"Contain warnings about potential issues that occurred during the model run."},"results":{"type":"object","title":"Emotions run results","description":"Only populated if the model run ended with `COMPLETE_OK` status"},"errorCode":{"allOf":[{"$ref":"#/components/schemas/EmotionsErrorCode"}],"title":"Error code","description":"Only populated if the model run ended with `COMPLETE_ERROR` status. Meaning of each error code:\n* `ERR_RECORDING_TOO_SHORT` - The recording supplied contained less than the minimum required amount of 10 seconds of speech.\n* `ERR_RECORDING_TOO_LONG` - The recording supplied exceeded the maximum allowed size of 410MB.\n* `ERR_INTERNAL` - An internal error occurred."}},"type":"object","required":["id","createdAt","status"],"title":"EmotionsModelRunResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"LanguageCode":{"type":"string","enum":["en","en-AU","en-GB","en-IE","en-IN","en-US","en-ZA","es-ES","es-US","id-ID","ja-JP"],"title":"LanguageCode","description":"An enumeration."},"MentalWellnessContinuousValue":{"properties":{"value":{"type":"number","maximum":1.0,"minimum":0.0,"title":"Value","example":"0.333"}},"type":"object","required":["value"],"title":"MentalWellnessContinuousValue","example":{"value":0.305014832}},"MentalWellnessErrorCode":{"type":"string","enum":["ERR_RECORDING_INVALID_FORMAT","ERR_RECORDING_TOO_SHORT","ERR_RECORDING_TOO_LONG","ERR_TRANSCRIPTION_FAILED","ERR_INTERNAL"],"title":"MentalWellnessErrorCode","description":"An enumeration."},"MentalWellnessModelRunActivityCreate":{"properties":{"user":{"allOf":[{"$ref":"#/components/schemas/UserDetails"}],"title":"User","description":"The user that this model run is being submitted for"},"language":{"allOf":[{"$ref":"#/components/schemas/LanguageCode"}],"title":"Language","description":"The code of the language being spoken by the user in the recording to be uploaded","example":"en-GB"},"accent":{"allOf":[{"$ref":"#/components/schemas/Accent"}],"title":"Accent","description":"The accent of the user speaking, in addition to the language they are speaking","example":"ID"},"sleepTime":{"type":"string","format":"date-time","title":"Sleep Time","description":"When the user fell asleep for their last main sleep before the recording was made (as an ISO 8601 datetime). This should <b>not include timezone information</b> but it is assumed to be in the local timezone of the user in the recording so the time of day can be inferred.","example":"2022-11-01T23:30"},"wakeTime":{"type":"string","format":"date-time","title":"Wake Time","description":"When the user woke from their last main sleep before the recording was made (as an ISO 8601 datetime). This should <b>not include timezone information</b> but it is assumed to be in the local timezone of the user in the recording so the time of day can be inferred.","example":"2022-11-02T07:15"},"tags":{"items":{"$ref":"#/components/schemas/Tag"},"type":"array","title":"Tags","description":"Name/Value pairs to tag a model run for later identification. Note:\n* Tag names must be unique\n* At most 20 tags are allowed per model run"},"deleteData":{"type":"boolean","title":"Delete Data","description":"Boolean flag indicating if user data is to be deleted after the completion of the model run. If True, the recordings, model inputs and model results will be deleted 12 hrs after the model run completes. Attempts to retrieve results after this time will receive a 404 error. If you wish to be more specific about which types of data are deleted, see the `data_to_delete` field below.","default":false},"dataToDelete":{"items":{"$ref":"#/components/schemas/DataDeletionType"},"type":"array","title":"Data To Delete","description":"An array of data types to indicate which data inputs should be deleted after completion of the model run.\nTo be used in combination with the `delete_data` boolean flag. Note:\n* If `delete_data` is set to `true` and `data_to_delete` value is omitted, all data will be deleted.\n* If `delete_data` is set to `true` and `data_to_delete` value is set to one or more data types, only the specified data will be deleted."},"activityType":{"type":"string","title":"Activity Type","description":"The type of activity to show to users. If omitted, a default activity will be used.\n        See the [online docs](https://thymia.ai/docs/building-your-integration) for the latest list of activities to choose from.","example":"read-aloud"}},"type":"object","required":["user","language"],"title":"MentalWellnessModelRunActivityCreate"},"MentalWellnessModelRunCreateActivityResponse":{"properties":{"id":{"type":"string","format":"uuid","title":"Model run id","description":"The id of the newly created model run"},"activityLink":{"type":"string","title":"Activity link","description":"A link to the thymia app, allowing users to perform an activity which captures a recording"}},"type":"object","required":["id","activityLink"],"title":"MentalWellnessModelRunCreateActivityResponse"},"MentalWellnessModelRunCreateUploadResponse":{"properties":{"id":{"type":"string","format":"uuid","title":"Model run id","description":"The id of the newly created model run"},"recordingUploadUrl":{"type":"string","title":"Recording upload url","description":"The url to upload recording contents to via a `PUT` request. Note:\n* Recordings should contain at least 10 seconds of speech and be under 3 minutes long\n* Supported formats are FLAC, MP3, MP4, Ogg, WebM, WAV\n* The upload url is valid for 1 hour","example":"https://path/to/upload"}},"type":"object","required":["id","recordingUploadUrl"],"title":"MentalWellnessModelRunCreateUploadResponse"},"MentalWellnessModelRunResponse":{"properties":{"id":{"type":"string","format":"uuid","title":"Model run id","description":"The id of the existing model run"},"createdAt":{"type":"string","format":"date-time","title":"Created at time","description":"When the model run was submitted to the API","example":"2019-08-24T14:15:22Z"},"status":{"allOf":[{"$ref":"#/components/schemas/ModelRunStatus"}],"description":"Current status of the model run. Possible values:\n * `CREATED`: Model run created; Waiting for files to be uploaded or thymia activities to be completed\n * `RUNNING`: All input to model has been supplied and the model is being executed\n * `COMPLETE_OK`: Model execution completed ok and results are available\n * `COMPLETE_ERROR`: Model execution completed with error and no results available\n    ","example":"COMPLETE_OK"},"runAt":{"type":"string","format":"date-time","title":"Run at time","description":"The time the model run started executing and the status changed to `RUNNING`. This is after all input to the model has been supplied"},"completedAt":{"type":"string","format":"date-time","title":"Completed at time","description":"When the model run finished processing and either results or an error reason are available; only populated once the model run completes","example":"2019-08-24T14:16:000Z"},"errorReason":{"type":"string","title":"Error reason","description":"Only populated if the model run ended with `COMPLETE_ERROR` status"},"warnings":{"items":{"type":"string"},"type":"array","title":"Warnings","description":"Contain warnings about potential issues that occurred during the model run."},"userLabel":{"type":"string","title":"User label","description":"Label of the user that this model run was submitted for"},"results":{"allOf":[{"$ref":"#/components/schemas/MentalWellnessResults"}],"title":"Model run results","description":"Only populated if the model run ended with `COMPLETE_OK` status"},"errorCode":{"allOf":[{"$ref":"#/components/schemas/MentalWellnessErrorCode"}],"title":"Error code","description":"Only populated if the model run ended with `COMPLETE_ERROR` status. Meaning of each error code:\n* `ERR_RECORDING_INVALID_FORMAT` - The recording supplied was not in supported file format.\n* `ERR_RECORDING_TOO_SHORT` - The recording supplied contained less than the minimum required amount of 10 seconds of speech.\n* `ERR_RECORDING_TOO_LONG` - The recording supplied exceeded the maximum allowed length of 3 minutes.\n* `ERR_TRANSCRIPTION_FAILED` - Couldn't determine speech in the recording supplied.\n* `ERR_INTERNAL` - An internal error occurred."},"activityType":{"type":"string","title":"Activity Type","description":"The activity type requested when creating the model run.\n    Only populated if using the Thymia Activity Plugin and specifying an activity type (instead of using the default type).","example":"read-aloud"},"tags":{"items":{"$ref":"#/components/schemas/Tag"},"type":"array","title":"Tags","description":"Name/Value pairs the model run was tagged with when created."},"deleteData":{"type":"boolean","title":"Delete Data","description":"Boolean flag indicating if user data is to be deleted after the completion of the model run."},"dataToDelete":{"items":{"$ref":"#/components/schemas/DataDeletionType"},"type":"array","title":"Data To Delete","description":"An array of data types to indicate which data inputs should be deleted after the completion of the model run."},"model":{"type":"string","title":"Model","description":"The version of model used in the model run."}},"type":"object","required":["id","createdAt","status","userLabel","deleteData"],"title":"MentalWellnessModelRunResponse"},"MentalWellnessModelRunUploadCreate":{"properties":{"user":{"allOf":[{"$ref":"#/components/schemas/UserDetails"}],"title":"User","description":"The user that this model run is being submitted for"},"language":{"allOf":[{"$ref":"#/components/schemas/LanguageCode"}],"title":"Language","description":"The code of the language being spoken by the user in the recording to be uploaded","example":"en-GB"},"accent":{"allOf":[{"$ref":"#/components/schemas/Accent"}],"title":"Accent","description":"The accent of the user speaking, in addition to the language they are speaking","example":"ID"},"sleepTime":{"type":"string","format":"date-time","title":"Sleep Time","description":"When the user fell asleep for their last main sleep before the recording was made (as an ISO 8601 datetime). This should <b>not include timezone information</b> but it is assumed to be in the local timezone of the user in the recording so the time of day can be inferred.","example":"2022-11-01T23:30"},"wakeTime":{"type":"string","format":"date-time","title":"Wake Time","description":"When the user woke from their last main sleep before the recording was made (as an ISO 8601 datetime). This should <b>not include timezone information</b> but it is assumed to be in the local timezone of the user in the recording so the time of day can be inferred.","example":"2022-11-02T07:15"},"tags":{"items":{"$ref":"#/components/schemas/Tag"},"type":"array","title":"Tags","description":"Name/Value pairs to tag a model run for later identification. Note:\n* Tag names must be unique\n* At most 20 tags are allowed per model run"},"deleteData":{"type":"boolean","title":"Delete Data","description":"Boolean flag indicating if user data is to be deleted after the completion of the model run. If True, the recordings, model inputs and model results will be deleted 12 hrs after the model run completes. Attempts to retrieve results after this time will receive a 404 error. If you wish to be more specific about which types of data are deleted, see the `data_to_delete` field below.","default":false},"dataToDelete":{"items":{"$ref":"#/components/schemas/DataDeletionType"},"type":"array","title":"Data To Delete","description":"An array of data types to indicate which data inputs should be deleted after completion of the model run.\nTo be used in combination with the `delete_data` boolean flag. Note:\n* If `delete_data` is set to `true` and `data_to_delete` value is omitted, all data will be deleted.\n* If `delete_data` is set to `true` and `data_to_delete` value is set to one or more data types, only the specified data will be deleted."},"recordingTime":{"type":"string","format":"date-time","title":"Recording Time","description":"When the recording was made (as an ISO 8601 datetime). This should <b>not include timezone information</b> but it is assumed to be in the local timezone of the user in the recording so the time of day can be inferred.","example":"2022-11-02T12:42"}},"type":"object","required":["user","language"],"title":"MentalWellnessModelRunUploadCreate"},"MentalWellnessPartResult":{"properties":{"startSecs":{"type":"number","title":"Section Start time","description":"Time in seconds (since the start of the whole recording) that this section starts at","example":"0"},"finishSecs":{"type":"number","title":"Section Finish time","description":"Time in seconds (since the start of the whole recording) that this section finishes at","example":"8.6"},"transcript":{"type":"string","title":"Transcript","description":"The transcription of speech within this section of the recording","example":"The North Wind and the Sun had a quarrel about which of them was the stronger."},"distress":{"allOf":[{"$ref":"#/components/schemas/MentalWellnessValue"}],"title":"Distress","description":"A measure of the user’s levels of distress, or in other words worry, nervousness or a feeling of being on edge."},"stress":{"allOf":[{"$ref":"#/components/schemas/MentalWellnessValue"}],"title":"Stress","description":"A measure of the user’s stress levels, or in other words how anxious or wound up they may feel on this day, whether they are able to relax."},"exhaustion":{"allOf":[{"$ref":"#/components/schemas/MentalWellnessValue"}],"title":"Exhaustion","description":"A measure of the user’s physical and mental tiredness as a result of manual or cognitive labour on this or previous days. This is not directly linked to a lack of sleep or the time of day."},"sleepPropensity":{"allOf":[{"$ref":"#/components/schemas/MentalWellnessValue"}],"title":"Sleep Propensity","description":"A measure of the user’s sleepiness, i.e. a measure of how likely they are to fall asleep if given the opportunity. This is more directly related to poor sleep or a lack of sleep over a single night or several nights."},"lowSelfEsteem":{"allOf":[{"$ref":"#/components/schemas/MentalWellnessValue"}],"title":"Low Self Esteem","description":"A measure of how well or confident the user feels in themselves and how they feel they measure up to the expectations of themselves and of others."},"mentalStrain":{"allOf":[{"$ref":"#/components/schemas/MentalWellnessValue"}],"title":"Mental Strain","description":"An overall measure of the user’s mental wellness."},"uniformDistress":{"allOf":[{"$ref":"#/components/schemas/MentalWellnessContinuousValue"}],"title":"Distress","description":"A continuous measure of the user’s levels of distress, or in other words worry, nervousness or a feeling of being on edge."},"uniformStress":{"allOf":[{"$ref":"#/components/schemas/MentalWellnessContinuousValue"}],"title":"Stress","description":"A continuous measure of the user’s stress levels, or in other words how anxious or wound up they may feel on this day, whether they are able to relax."},"uniformExhaustion":{"allOf":[{"$ref":"#/components/schemas/MentalWellnessContinuousValue"}],"title":"Exhaustion","description":"A continuous measure of the user’s physical and mental tiredness as a result of manual or cognitive labour on this or previous days. This is not directly linked to a lack of sleep or the time of day."},"uniformSleepPropensity":{"allOf":[{"$ref":"#/components/schemas/MentalWellnessContinuousValue"}],"title":"Sleep Propensity","description":"A continuous measure of the user’s sleepiness, i.e. a measure of how likely they are to fall asleep if given the opportunity. This is more directly related to poor sleep or a lack of sleep over a single night or several nights."},"uniformLowSelfEsteem":{"allOf":[{"$ref":"#/components/schemas/MentalWellnessContinuousValue"}],"title":"Low Self Esteem","description":"A continuous measure of how well or confident the user feels in themselves and how they feel they measure up to the expectations of themselves and of others."}},"type":"object","required":["startSecs","finishSecs","transcript","distress","stress","exhaustion","sleepPropensity","lowSelfEsteem","mentalStrain"],"title":"MentalWellnessPartResult"},"MentalWellnessResults":{"properties":{"sections":{"items":{"$ref":"#/components/schemas/MentalWellnessPartResult"},"type":"array","title":"Recording section results","description":"An array of mental wellness indicators, each specific to one timed section of the recording"}},"type":"object","required":["sections"],"title":"MentalWellnessResults"},"MentalWellnessValue":{"properties":{"value":{"type":"number","maximum":1.0,"minimum":0.0,"title":"Value","example":"0.333"}},"type":"object","required":["value"],"title":"MentalWellnessValue"},"ModelRunStatus":{"type":"string","enum":["CREATED","RUNNING","COMPLETE_OK","COMPLETE_ERROR"],"title":"ModelRunStatus","description":"An enumeration."},"ModelRuns":{"properties":{"mentalWellness":{"$ref":"#/components/schemas/MentalWellnessModelRunResponse"},"apollo":{"$ref":"#/components/schemas/ApolloModelRunResponse"},"emotions":{"$ref":"#/components/schemas/EmotionsModelRunResponse"}},"type":"object","title":"ModelRuns"},"QuestionnaireCreate":{"properties":{"user":{"$ref":"#/components/schemas/UserDetailsShort"},"questionnaireType":{"type":"string","title":"Questionnaire Type","description":"The type of questionnaire to create, using values agreed with thymia.\n        _Before calling, first contact thymia to configure your custom set of questionnaires._"}},"type":"object","required":["user","questionnaireType"],"title":"QuestionnaireCreate"},"QuestionnaireCreateResponse":{"properties":{"id":{"type":"string","format":"uuid","title":"Questionnaire id","description":"The id of the newly created questionnaire"},"activityLink":{"type":"string","title":"Activity link","description":"A link to the thymia app, allowing users to answer the questionnaire as a thymia activity"}},"type":"object","required":["id","activityLink"],"title":"QuestionnaireCreateResponse"},"QuestionnaireResponse":{"properties":{"status":{"allOf":[{"$ref":"#/components/schemas/QuestionnaireStatus"}],"description":"Current status of the questionnaire. Possible values:\n* `RESULTS_NOT_AVAILABLE`: Questionnaire has not been completed yet\n* `RESULTS_AVAILABLE`: Questionnaire has been completed and results are available\n        ","example":"RESULTS_AVAILABLE"},"details":{"allOf":[{"$ref":"#/components/schemas/CompletedQuestionnaireDetails"}],"title":"Details of the completed questionnaire","description":"Only populated if `status` is `RESULTS_AVAILABLE`"}},"type":"object","required":["status"],"title":"QuestionnaireResponse"},"QuestionnaireScoreDetails":{"properties":{"score":{"type":"integer","title":"Score","description":"Overall score given to this questionnaire response"},"scoreMetadata":{"type":"object","title":"Score metadata","description":"Metadata to make sense of the score"}},"type":"object","required":["score","scoreMetadata"],"title":"QuestionnaireScoreDetails"},"QuestionnaireStatus":{"type":"string","enum":["RESULTS_NOT_AVAILABLE","RESULTS_AVAILABLE"],"title":"QuestionnaireStatus","description":"An enumeration."},"Tag":{"properties":{"name":{"type":"string","maxLength":40,"title":"Name"},"value":{"type":"string","maxLength":100,"title":"Value"}},"type":"object","required":["name","value"],"title":"Tag"},"UserDataUpload":{"properties":{"user":{"$ref":"#/components/schemas/UserDetailsShort"},"data":{"type":"object","title":"Contents of the user data","description":"User data JSON object as agreed with thymia"}},"type":"object","required":["user","data"],"title":"UserDataUpload"},"UserDataUploadResponse":{"properties":{"uploadId":{"type":"string","format":"uuid","title":"Upload id","description":"The id assigned to the uploaded user data"}},"type":"object","required":["uploadId"],"title":"UserDataUploadResponse"},"UserDetails":{"properties":{"userLabel":{"type":"string","maxLength":50,"minLength":1,"title":"User label","description":"A unique label identifying a user that all model input refers to","example":"42baba59-fa4a-4a22-ba1c-2e4a88a3badb"},"dateOfBirth":{"type":"string","format":"date","title":"Date of birth","description":"An ISO 8601 date; if day or month are unknown, supply the parts which *are* known and use `01` for the rest","example":"1990-08-24"},"birthSex":{"allOf":[{"$ref":"#/components/schemas/BirthSex"}],"title":"Birth sex","description":"The sex assigned to a user at birth"}},"type":"object","required":["userLabel","dateOfBirth","birthSex"],"title":"UserDetails"},"UserDetailsShort":{"properties":{"userLabel":{"type":"string","maxLength":50,"minLength":1,"title":"User label","description":"A unique label identifying a user in your systems","example":"42baba59-fa4a-4a22-ba1c-2e4a88a3badb"}},"type":"object","required":["userLabel"],"title":"UserDetailsShort"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"VoiceAgentCallCreate":{"properties":{"phoneNumber":{"type":"string","title":"Phone Number","description":"The phone number to call for the voice agent interaction","example":"+447700123123"},"user":{"allOf":[{"$ref":"#/components/schemas/UserDetails"}],"title":"User","description":"The user that this voice agent call is being initiated for"},"language":{"allOf":[{"$ref":"#/components/schemas/LanguageCode"}],"title":"Language","description":"The code of the language being spoken by the user in the call","example":"en-GB"},"agent":{"type":"object","title":"Agent","description":"Configuration for the AI voice agent to be used in the call","example":{"id":"patient-intake","context":{"name":"Greg"}}},"webhookUrl":{"type":"string","maxLength":2083,"minLength":1,"format":"uri","title":"Webhook Url","description":"Optional webhook URL to receive call status updates and results"},"metadata":{"type":"object","title":"Metadata","description":"Additional metadata associated with the voice agent call","default":{}},"deleteData":{"type":"boolean","title":"Delete Data","description":"Boolean flag indicating if call data should be deleted after completion. If True, the call recordings, transcripts, and results will be deleted 12 hrs after the call ends. Attempts to retrieve results after this time will receive a 404 error. ","default":false}},"type":"object","required":["user","language","agent"],"title":"VoiceAgentCallCreate"},"VoiceAgentCallCreateResponse":{"properties":{"id":{"type":"string","format":"uuid","title":"Call id","description":"The id of the newly created call"},"user":{"$ref":"#/components/schemas/UserDetailsShort"},"status":{"type":"string","title":"Status","description":"Current status of the call","example":"CREATED"},"createdAt":{"type":"string","format":"date-time","title":"Created at time","description":"When the call was submitted to the API","example":"2019-08-24T14:15:22Z"},"activityLink":{"type":"string","title":"Activity link","description":"Optional link to call as a thymia activity, only present if a phone number was not provided"},"agent":{"type":"object","title":"Agent","description":"Configuration for the AI voice agent to be used in the call","example":{"id":"patient-intake"}}},"type":"object","required":["id","user","status","createdAt","agent"],"title":"VoiceAgentCallCreateResponse"},"VoiceAgentCallResponse":{"properties":{"id":{"type":"string","format":"uuid","title":"Call id","description":"The id of the requested call"},"user":{"$ref":"#/components/schemas/UserDetailsShort"},"status":{"type":"string","title":"Status","description":"Current status of the call","example":"CREATED"},"agent":{"type":"object","title":"Agent","description":"Configuration for the AI voice agent used in the call","example":{"id":"patient-intake"}},"extractedFields":{"type":"object","title":"Extracted Fields","description":"Fields that was extracted by the agent in the call","example":{"urgency":"low"}},"modelRun":{"allOf":[{"$ref":"#/components/schemas/ModelRuns"}],"title":"Model Run","description":"Model run results if available"}},"type":"object","required":["id","user","status","agent"],"title":"VoiceAgentCallResponse"}},"securitySchemes":{"APIKeyHeader":{"type":"apiKey","description":"Your API Activation Key","in":"header","name":"x-api-key"}}},"tags":[{"name":"Mental Wellness - Thymia Helios","description":"A model to generate indicators of mental wellness related to low or high emotional arousal and valence.\n"},{"name":"Apollo","description":"A model to generate health biomarkers from voice recordings."},{"name":"Voice Agent (Beta)","description":"Voice agent call management and operations."},{"name":"User Data","description":"Data gathered by a customer about a specific user and uploaded to thymia."},{"name":"Questionnaires","description":"Questionnaires delivered to users as a thymia activity."},{"name":"Account","description":"Details about your account with thymia."}]}