# Obtaining advisor id FeelGPT [AnalyzeFile API](https://emlo.cloud/documentation/feelgpt-analyze-file) endpoint requires an advisor-id as part of the request. This document explains how to get obtain an advisor-id 1\. On FeelGPT, click "Let's Start" button on your prefered advisor ![](https://nms-documentation-images.s3.eu-west-1.amazonaws.com/20400d65-7c4f-4962-b7c2-6842f4fd17db.png) 2\. The advisor-id it located at the top-right of the screen ![](https://nms-documentation-images.s3.eu-west-1.amazonaws.com/d9408cdc-64de-4551-b751-6dfbd84ffbba.png) 3\. Copy the advisor-id to the clipboard by clicking the "copy" icon. ## FeelGPT Get Advisors List **advisors** is an HTTP GET enpoint to retrieve a list of all available advisors. A call to **advisors** endpoint requires basic authentication. Please refer to [Analyze Now Authentication](https://emlo.cloud/documentation/analyze-now-applications-authenticaiton) Here is a sample Javascript code to fetch the advisors list [![41.png](https://docs.ado-tech.com/uploads/images/gallery/2025-03/scaled-1680-/JpLx34IZueJP8ZDr-41.png)](https://docs.ado-tech.com/uploads/images/gallery/2025-03/JpLx34IZueJP8ZDr-41.png) **analyze** is an HTTP POST enpoint to start an asynchronus process to analyze an audio file. The analysis process status reported though a webhook calls from FeelGPT analyzer. A call to analyze endpoint requires basic authentication. Please refer to [Analyze Now Authentication](https://emlo.cloud/documentation/analyze-now-applications-authenticaiton) It is recommended to encrypt the callback payload data by passing an "encryptionKey" string value on the request. [Read more](https://emlo.cloud/documentation/analyze-now-encrypted-response) Learn how to obtain the advisor-id for your prefered advisor [Here](https://emlo.cloud/documentation/feelgpt-obtaning-advisor-id) Parameters
Param NameIs MandatoryComments
audioLangugeyesThe spoken language in the audio file
fileyesa file to analyze
analysisLanguageyesThe language FeelGPT will use for the analysis report
statusCallbackUrlyesA webhook URL for status calls from FeelGPT analysis engine
sendPdfnoI "true", send the analysis results in PDF format on analysis completion. The file on the callback is based64 encoded
encryptionKeynoEncryption key to encode the "payload" field on webhook callback
See NodeJS sampke code Install required libraries ```javascript npm install axios form-data ``` [![42.png](https://docs.ado-tech.com/uploads/images/gallery/2025-03/scaled-1680-/Y9DjMYoBszoedctC-42.png)](https://docs.ado-tech.com/uploads/images/gallery/2025-03/Y9DjMYoBszoedctC-42.png) **Explanation** 1. **Importing Libraries:** 1. `axios` for making HTTP requests. 2. `form-data` for handling form data, especially for file uploads 3. `fs` for file system operations 4. `path` for handling file paths. 2. **Creating the Form Data:** 1. A new instance of `FormData` is created. 2. Required fields are appended to the form, including the audio file using `fs.createReadStream()` to read the file from the disk. 3. **Making the Request:** 1. The `axios.post()` method sends a POST request to the specified URL. 2. Basic authentication is used via the `auth` option. 3. `form.getHeaders()` is used to set the appropriate headers for the form data. 4. **Handling the Response:** 1. The response is logged to the console. 2. Any errors are caught and logged, with detailed error information if available 3. Replace `'path\_to\_your\_audio\_file.wav'` with the actual path to your audio file. This code will send a POST request to the "analyze" endpoint with the required form data and handle the response accordingly. **Response Structure** Upon request reception, FeelGPT validate the request parameters. For a valid request FeelGPT will return a "reportId" identifier to be used when recieving asynchronous status updates. For invalid parameter the response will return an error code and message which indicates the invalid param. Sample response for a valid request [![43.png](https://docs.ado-tech.com/uploads/images/gallery/2025-03/scaled-1680-/lOuIbrDew1t5JPGA-43.png)](https://docs.ado-tech.com/uploads/images/gallery/2025-03/lOuIbrDew1t5JPGA-43.png) Sample response for a request with an invalid parameter [![44.png](https://docs.ado-tech.com/uploads/images/gallery/2025-03/scaled-1680-/zCFZKc8NbOEmo8fw-44.png)](https://docs.ado-tech.com/uploads/images/gallery/2025-03/zCFZKc8NbOEmo8fw-44.png) Once a valid request accepped on FeelGPT, it starts sending status update to the URL provided on "statusCallbackUrl" parameter. **Sample status callback data** **[![45.png](https://docs.ado-tech.com/uploads/images/gallery/2025-03/scaled-1680-/3MmBGtFY9HP6tkWp-45.png)](https://docs.ado-tech.com/uploads/images/gallery/2025-03/3MmBGtFY9HP6tkWp-45.png)** application: always "feelgpt". eventDate: Time of the event in GMT timezone payload: contain the actual event data payload/reportId: The reportId that was provided on the response for the analysis request payload/status: The current analysis status encrypted: true of "encryptionKey" parameter sent on the analysis request **Avaialble Status** queued - The analysis request was successfully accepted, and queud for analysis transcripting - The audio is now on transcription analyzing - FeelGPT analyze the audio for emotions completed - The report is ready. the "result" data contains the analysis data pdfReady - If a PDF report was requested on the request, the payload for this status contains a PDF file in Base64 encoding