https://fireflies.forgefx.tools


Fireflies Methods

Based on the provided codebase, here’s a list of key functions and their purposes related to the Fireflies integration:

  • fireflies_query(graphql_query: str): Sends a GraphQL query to the Fireflies API and returns the response.

  • get_all_users(): Retrieves all users from Fireflies.

  • get_user(user_id): Fetches a specific user’s details by their ID.

  • get_transcript(transcript_id): Retrieves a specific transcript by its ID.

  • get_transcript_sentences(transcript_id): Gets the sentences of a specific transcript.

  • get_transcript_text(transcript_id): Retrieves the full text of a transcript.

  • get_all_transcripts_from_fireflies(limit_per_user=1): Fetches all transcripts from Fireflies, limited by a number per user.

  • get_recent_transcripts(days=3): Retrieves transcripts from the last specified number of days.

  • get_recent_sales_transcripts(hours=72): Gets recent transcripts for sales users within a specified time frame.

  • get_transcripts_by_user_id(user_id, limit=10): Fetches transcripts for a specific user.

  • get_transcript_ids_for_all_users(limit_per_user=50): Retrieves transcript IDs for all users.

  • hello_fireflies(): Prints a list of all Fireflies users, mainly for testing/demonstration.

These functions form the core of the Fireflies integration, handling API communication, data retrieval, and basic processing of transcript data.


Fireflies.ai GraphQL API Docs

This documentation provides an easy starting point to access your data generated from meetings that had Fred Fireflies.ai notetaker present.

Our GraphQL API allows users to query data using any programming language of your choice.

To query any endpoint, you must your API Key in the Authorization header for every Request query. Click here to get your API key

Note Usage beyond 50 api calls per day requires a Business account.

Note The “CustomTopic” property is currently disabled - we are currently revamping it and we will have support for it by Q3.

API Endpoints

Public API endpoint:
https://api.fireflies.ai/graphql

Query

User

Get a single user object which contains information about user email, full name, active integrations, minutes consumed and more. The query accepts id as an optional parameter. By default, Fireflies uses your api token to search and return the user object if the id param is not specified. To query for the user object of any member of your team, you’ll need to add the id paramter

Example using curl

   curl \
   -X POST \
   -H "Content-Type: application/json" \
   -H "Authorization: Bearer xxxxxxxxxxxxxxxx" \
   --data '{ "query": "{ user { name integrations } }" }' \
   https://api.fireflies.ai/graphql/

Example using axios

                     axios({url: 'https://api.fireflies.ai/graphql',
                     method: 'post',
                     headers: {
                       'Content-Type': 'application/json',
                       'Authorization': 'Bearer xxxxxxxxxxxxxxxx'
                     },
                     data: {
                       query: `
                           query {
                             user(id:""){
                               user_id
                               email
                               name
                               num_transcripts
                               recent_transcript
                               minutes_consumed
                               is_admin
                               integrations
                             }
                           }
                        `
                     }
                   }).then(result => {
                     console.log(result.data)
                   }).catch(e => {
                       console.log(e.response.data)
                   });
                  

User Response Data

user_id: A unique identifier assigned to each user.

email: User email address.

name: User fullname.

num_transcripts: Number of generated transcripts

recent_transcript: Deprecated use recent_meeting

recent_meeting: Unique id of recent or last generated meeting

minutes_consumed: Number of transcription minutes consumed

is_admin: Returns true if user is admin

integrations: An array of activated integrations

Example

Request Content-Types: application/json

Query

query user($id: String){
  user(id: $id){
    email
  }
}

Variables

{
  "id": "string"
}

Try it now

Response Content-Types: application/json

Response Example (200 OK)

{
  "data": {
    "user": {
      "email": "string"
    }
  }
}

Users

Returns an array of entire users in your team. Each item in the array [Response Data](https://docs.fireflies.ai/#user-response) is a [User](https://docs.fireflies.ai/#user) object constaining values as described above

Example In this example we’ll find the user with the highest transcription minutes consumed

                    async function userWithMaxMinutesConsumed(){
                      try {
                        const result = await axios({
                          url: 'https://api.fireflies.ai/graphql',
                          method: 'post',
                          headers: {
                            'Content-Type': 'application/json',
                            'Authorization': 'Bearer xxxxxxxxxxxxxxxx'
                          },
                          data: {
                            query: `
                              query {
                                users{
                                  name
                                  minutes_consumed
                                }
                              }
                            `
                          }
                        })
                        const users =  result.data.data.users
                        let highestMinuteConsumed = 0;
                        let name = "";
                        users.forEach(user => {
                            if(user && user.minutes_consumed > highestMinuteConsumed ){
                                highestMinuteConsumed = user.minutes_consumed
                                name = user.name
                            }
                        })
                        return { name, highestMinuteConsumed }
                      }catch(e){console.log(e)}
                  }
                  

Example

Request Content-Types: application/json

Query

query users{
  users{
    user_id
    email
    name
    num_transcripts
    recent_transcript
    recent_meeting
    minutes_consumed
    is_admin
    integrations
  }
}

Try it now

Response Content-Types: application/json

Response Example (200 OK)

{
  "data": {
    "users": [
      {
        "user_id": "string",
        "email": "string",
        "name": "string",
        "num_transcripts": "integer",
        "recent_transcript": "string",
        "recent_meeting": "string",
        "minutes_consumed": "number",
        "is_admin": "boolean",
        "integrations": [
          "string"
        ]
      }
    ]
  }
}

Transcript

Get a single meeting. The result is an object which contains values including, transcript url, duration of meeting, custom topics, meeting participants and more. It requires a query param id which is the meeting id.

Example One: using curl

ensure to replace all xxxxxxxxxxxx with valid parameters

  curl \
  -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer xxxxxxxxxxx" \
  --data '{ "query": "{ transcript(id:\"xxxxxxxxxxxxxx\"){ title date } }" }' \
  https://api.fireflies.ai/graphql/

Example Two: using axios

                     axios({
                        url: 'https://api.fireflies.ai/graphql',
                        method: 'post',
                        headers: {
                          'Content-Type': 'application/json',
                          'Authorization': 'Bearer xxxxxxxxxxxxxxxx' #Your access token
                        },
                        data: {
                          query: `
                            query {
                              transcript(id:"xxxxxxxxxxxxx") {
                                title
                                date
                                duration
                              }
                            }
                          `
                        }
                      }).then(result => {
                        console.log(result.data)
                      }).catch(e => {
                          console.log(e)
                      });
                  

Example Three: Fetching our recent transcript with axios

                  async function getRecentTranscript(){
                      # query for transcript id
                      const user = await axios({
                          url: 'https://api.fireflies.ai/graphql',
                          method: 'post',
                          headers: {
                            'Content-Type': 'application/json',
                            'Authorization': 'Bearer 6e41b52e124d6be5f0aad01f67147306'
                          },
                          data: {
                            query: `
                              query {
                                user(id:"") {
                                  recent_transcript
                                }
                              }
                            `
                          }
                      })
                      const transcriptId = user.data.data.user.recent_transcript;
                      # query for transcript using transcriptId
                      axios({
                        url: 'https://api.fireflies.ai/graphql',
                        method: 'post',
                        headers: {
                          'Content-Type': 'application/json',
                          'Authorization': 'Bearer 6e41b52e124d6be5f0aad01f67147306'
                        },
                        data: {
                          query: `
                            query($transcriptId: String!) {
                              transcript(id: $transcriptId) {
                                title
                                date
                                duration
                                sentences {
                                    text
                                    start_time
                                }
                              }
                            }
                          `,
                          variables: { transcriptId }
                        },
                      }).then(result => {
                        console.log(result.data);
                      }).catch(e => {
                          console.log(e);
                      });
                  }
                  

Transcript Response Data

id: A unique identifier assigned to each transcript.

sentences: An array of objects containing:

  • index: Array index
  • text: Formated sentence striped of empty spaces
  • raw_text: Unformated sentence
  • start_time: Meeting start time
  • end_time: Meeting end time
  • speaker_id: ID of the speaker
  • speaker_name: Name of the speaker Defaults to null

title: Meeting title.

host_email: Email address of the meeting host.

organizer_email: Same as host_email

user: An object cointaining

  • user_id: A unique identifier assigned to each user.
  • email: User email address.
  • name: user fullname.
  • num_transcripts: Number of generated transcripts
  • recent_transcript: Unique id of recent or last generated transcript
  • minutes_consumed: Number of transcription minutes consumed
  • is_admin: user an is_admin true/false
  • integrations: An array of activated integrations

fireflies_users: An array of email addresses of only Fireflies users participants that have fireflies account that participated in the meeting.

participants: An array of email addresses of meeting participants guests, including participants that do not have Fireflies account.

date: Date the transcript was created.

transcript_url: Transcript url.

audio_url: Secure, newly generated hashed url that allows you download meeting audio / video. This url expires after every 24 hours. You’d have to make another request to generate a new audio_url.

duration: Duration of the meeting.

custom_topics: Deprecated

Example

Request Content-Types: application/json

Query

query transcript($id: String!){
  transcript(id: $id){
    id
    title
    host_email
    organizer_email
    fireflies_users
    participants
    date
    transcript_url
    audio_url
    duration
  }
}

Variables

{
  "id": "string"
}

Try it now

Response Content-Types: application/json

Response Example (200 OK)

{
  "data": {
    "transcript": {
      "id": "string",
      "title": "string",
      "host_email": "string",
      "organizer_email": "string",
      "fireflies_users": [
        "string"
      ],
      "participants": [
        "string"
      ],
      "date": "number",
      "transcript_url": "string",
      "audio_url": "string",
      "duration": "number"
    }
  }
}

Transcripts

Queries all available meetings generated for a user. Returns a maximum number of 50 meetings per query, ordered by the date created.

Transcripts Query Params

Transcripts accept one or more query parameters used to filter your search results.

user_id : Optional By default, Fireflies uses your api token to return all your meetings. You can provide user_id of a team member as a query param if you want to query all meetings belonging to that member of your team.

title : Return all meetings that matches the title

host_email : Return all meetings that matches the host email address

date : Return all meetings created within the date specified. Query input value must be in milliseconds. For example, you can use the JavaScript new Date().getTime() to get the datetime in milliseconds which should look like this 1621292557453

participant_email : Return all meetings that has a participant’s email address

limit : Limit the amount of meetings returned. The max returned value is 50 meetings per query

skip : You can skip a number of meetings and only return meetings from a certain number. For example If you have 200 meetings, you can decide to return the last 30 - 50 meetings and skip the first 150 meetings entirely.

Example using curl

    curl \
    -X POST \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxx" \
    --data '{ "query": "{ transcripts { title date } }" }' \
    https://api.fireflies.ai/graphql/

Example using JavaScript Native Fetch API

    fetch('https://api.fireflies.ai/graphql', {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json',
        'Authorization': 'Bearer xxxxxxxxxxxxxxxx' //Your authorization token
      },
      body: JSON.stringify({
        query: `
            query {
                transcripts {
                    id
                    title
                    fireflies_users
                    participants
                    date
                    transcript_url
                    duration
                }
            }
        `
      }),
    })
    .then(result => result.json())
    .then(result => console.log(result.data))
    .catch(error => {
      console.error('Error:', error);
    });

Example using axios

  const axios = require('axios')
  axios({
      url: 'https://api.fireflies.ai/graphql',
      method: 'post',
      headers: {
        'Content-Type': 'application/json',
        'Authorization': 'Bearer xxxxxxxxxxxxxxxx' #Your access token
      },
      data: {
        query: `
          query {
            transcripts {
              title
              date
              sentences{
                  text
              }
            }
          }
        `
      }
    }).then(result => {
      console.log(result.data)
    }).catch(e => {
        console.log(e)
    });

Transcripts Response Data

id: A unique identifier assigned to each transcript.

sentences: An array of objects containing:

  • index: Array index
  • text: Formated sentence striped of empty spaces
  • raw_text: Unformated sentence
  • start_time: Meeting start time
  • end_time: Meeting end time
  • speaker_id: ID of the speaker
  • speaker_name: Name of the speaker Defaults to null

title: Meeting title.

host_email: Email address of the meeting host.

organizer_email: Same as host_email

user: An object cointaining

  • user_id: A unique identifier assigned to each user.
  • email: User email address.
  • name: User fullname.
  • num_transcripts: Number of generated transcripts
  • recent_transcript: Unique id of recent or last generated transcript
  • minutes_consumed: Number of transcription minutes consumed
  • is_admin: returns true if user is admin
  • integrations: An array of activated integrations

fireflies_users: An array of email addresses of only Fireflies users participants that have fireflies account that participated in the meeting.

participants: An array of email addresses of meeting participants guests, including participants that do not have Fireflies account.

date: Date the transcript was created.

transcript_url: Transcript url.

audio_url: Secure, newly generated hashed url that allows you download meeting audio / video. This url expires after every 24 hours. You’d have to make another request to generate a new audio_url.

duration: Duration of the meeting.

custom_topics: Deprecated

participant_email:

string

(no description)

Example

Request Content-Types: application/json

Query

query transcripts($user_id: String, $title: String, $host_email: String, $date: Float, $participant_email: String, $limit: Int, $skip: Int){
  transcripts(user_id: $user_id, title: $title, host_email: $host_email, date: $date, participant_email: $participant_email, limit: $limit, skip: $skip){
    id
    sentences{
      index
      text
      raw_text
      start_time
      end_time
      speaker_id
      speaker_name
    }
    title
    host_email
    organizer_email
    fireflies_users
    participants
    date
    transcript_url
    audio_url
    duration
  }
}

Variables

{
  "user_id": "string",
  "title": "string",
  "host_email": "string",
  "date": "number",
  "participant_email": "string",
  "limit": "integer",
  "skip": "integer"
}

Try it now

Response Content-Types: application/json

Response Example (200 OK)

{
  "data": {
    "transcripts": [
      {
        "id": "string",
        "sentences": [
          {
            "index": "number",
            "text": "string",
            "raw_text": "string",
            "start_time": "number",
            "end_time": "number",
            "speaker_id": "integer",
            "speaker_name": "string"
          }
        ],
        "title": "string",
        "host_email": "string",
        "organizer_email": "string",
        "fireflies_users": [
          "string"
        ],
        "participants": [
          "string"
        ],
        "date": "number",
        "transcript_url": "string",
        "audio_url": "string",
        "duration": "number"
      }
    ]
  }
}

Mutation

User Role

Set the role for a user. Roles limit users to certain actions that can be executed and is classified into 3 categories.

admin: Grants administrative privileges to user, including the ability to add other users.

user: Grants access to all user functionalities e.g query, delete & upload audio for transcription

viewer: Grants access to only view transcripts

Note The User must be an Admin to perform this operation

Example

                  const user_id = "3xxxxxxxxxxxx";
                  const role = "admin";
                  axios({
                      url: 'https://api.fireflies.ai/graphql',
                      method: 'post',
                      headers: {
                        'Content-Type': 'application/json',
                        'Authorization': 'Bearer xxxxxxxxxxxxx'
                      },
                      data: {
                        query: `
                          mutation($user_id: String!, $role: Role!) {
                            setUserRole(user_id: $user_id, role:$role) {
                              name
                              is_admin
                            }
                          }
                        `,
                        variables: { user_id, role }
                      },
                    }).then(result => {
                      console.log(result.data.data);
                    }).catch(e => {
                        console.log(e);
                    });
                  

User Role Response Data

The response data is same as the User response data

Example

Request Content-Types: application/json

Query

mutation setUserRole($user_id: String!, $role: Role!){
  setUserRole(user_id: $user_id, role: $role){
    user_id
    email
    name
    num_transcripts
    recent_transcript
    recent_meeting
    minutes_consumed
    is_admin
    integrations
  }
}

Variables

{
  "user_id": "string",
  "role": "string"
}

Try it now

Response Content-Types: application/json

Response Example (200 OK)

{
  "data": {
    "setUserRole": {
      "user_id": "string",
      "email": "string",
      "name": "string",
      "num_transcripts": "integer",
      "recent_transcript": "string",
      "recent_meeting": "string",
      "minutes_consumed": "number",
      "is_admin": "boolean",
      "integrations": [
        "string"
      ]
    }
  }
}

Delete Transcript

Deletes a meeting transcript from the user account. This query takes meeting id and returns an object containing information about the deleted transcript.

Example

                  const transcriptId = "randomnoteotxxxxxxqa31h";
                  axios({
                    url: 'https://api.fireflies.ai/graphql',
                    method: 'post',
                    headers: {
                      'Content-Type': 'application/json',
                      'Authorization': 'Bearer xxxxxxxxxxxxxx'
                    },
                    data: {
                      query: `
                        mutation($transcriptId: String!) {
                          deleteTranscript(id: $transcriptId) {
                            title
                            date
                            duration
                            organizer_email
                          }
                        }
                      `,
                      variables: { transcriptId }
                    },
                  }).then(result => {
                    console.log(result.data.data);
                  }).catch(e => {
                      console.log(e.response.data);
                  });
                  

Delete Transcript Response Data

The response data is same as the Transcript response data

Example

Request Content-Types: application/json

Query

mutation deleteTranscript($id: String!){
  deleteTranscript(id: $id){
    id
    title
    host_email
    organizer_email
    fireflies_users
    participants
    date
    transcript_url
    audio_url
    duration
  }
}

Variables

{
  "id": "string"
}

Try it now

Response Content-Types: application/json

Response Example (200 OK)

{
  "data": {
    "deleteTranscript": {
      "id": "string",
      "title": "string",
      "host_email": "string",
      "organizer_email": "string",
      "fireflies_users": [
        "string"
      ],
      "participants": [
        "string"
      ],
      "date": "number",
      "transcript_url": "string",
      "audio_url": "string",
      "duration": "number"
    }
  }
}

Upload Audio

The mutation operation allows users to upload audio files for transcription. The operation takes four parameters

url: the url of media file to be transcribed. It MUST be a valid http string and publicly accessible to enable us download the audio / video file. Double check to see if the media file is downloadable and that the link is not a preview link before making the request. The media file must be either of these formats - mp3, mp4, wav.

title: title or name of the meeting, this will be used to identify the transcribed file

attendees: Optional An array of objects containing meeting attendees. This is relevant if you have active integrations like Salesforce, Hubspot etc. Fireflies uses the attendees value to push meeting notes to your active CRM integrations where notes are added to an existing contact or a new contact is created. Each object contains -

  • displayName
  • email
  • phoneNumber

webhook: optional a valid http endpoint that will be triggered when transcription is completed. Please note, all localhost urls e.g http://localhost will be ignored.

The webhook is called, passing the value meetingId in the body of the POST request. The value is a unique identifier of the transcribed meeting. This id can then be used to fetch pull the transcript. See example below

Webhook must be a valid url and should handle POST requests.

  POST https://example.com/webhook/

Example - Upload Audio

                  const input = {
                    url : "https://url-to-the-audio-file",
                    title : "title of the file",
                    attendees: [
                      {
                        displayName: "Fireflies Notetaker",
                        email: "notetaker@fireflies.ai",
                        phoneNumber: "xxxxxxxxxxxxxxxx"
                      },
                      {
                        displayName: "Fireflies Notetaker 2",
                        email: "notetaker2@fireflies.ai",
                        phoneNumber: "xxxxxxxxxxxxxxxx"
                      }
                    ],
                    webhook: "https://example.com/webhook"
                  }
                  axios({ url: 'https://api.fireflies.ai/graphql',
                    method: 'post',
                    headers: {
                      'Content-Type': 'application/json',
                      'Authorization': 'Bearer xxxxxxxxxxxxxxxxx'
                    },
                    data: {
                      query: `
                        mutation($input: AudioUploadInput) {
                          uploadAudio(input: $input) {
                            success
                            title
                            message
                          }
                        }
                      `,
                      variables: { input }
                    },
                  }).then(result => {
                    console.log(result.data.data.uploadAudio);
                  }).catch(e => {
                      console.log(e.message);
                  });
                  

Example - Webhook

This webhook listens for post requests, and then uses the recieved parameter meetingId to query for transcript

                  const express = require('express')
                  const bodyParser = require('body-parser');
                  const app = express();
                  const axios = require('axios');
                  app.use(bodyParser.json());
                  app.post('/webhook', async(req, res) => {
                      const { meetingId } = req.body;
                      const transcript = await axios({
                          url: 'https://api.fireflies.ai/graphql',
                          method: 'post',
                          headers: {
                            'Content-Type': 'application/json',
                            'Authorization': 'Bearer xxxxxxxxxxxxxxxxxxx' #Your Authorization Token
                          },
                          data: {
                            query: `
                              query($meetingId: String!) {
                                transcript(id: $meetingId) {
                                  title
                                  date
                                  duration
                                  sentences {
                                      index
                                      text
                                      speaker_id
                                      speaker_name
                                      start_time
                                  }
                                  transcript_url
                                  host_email
                                }
                              }
                            `,
                            variables: { meetingId }
                          },
                        })
                      #Perform program logic with the returned transcript
                      res.send({transcript})
                  });
                  app.listen(5000, () => console.log('server running on port 5000'))
                  

Upload Audio Response Data

success: returns true if upload was successful.

title: title of the transcribed file as specified in the query parameter

message: contains information about the transcription process e.g Success. Processing audio

Example

Request Content-Types: application/json

Query

mutation uploadAudio($input: AudioUploadInput){
  uploadAudio(input: $input){
    success
    title
    message
  }
}

Variables

{
  "input": {
    "url": "string",
    "title": "string",
    "attendees": [
      {
        "displayName": "string",
        "email": "string",
        "phoneNumber": "string"
      }
    ],
    "webhook": "string"
  }
}

Try it now

Response Content-Types: application/json

Response Example (200 OK)

{
  "data": {
    "uploadAudio": {
      "success": "boolean",
      "title": "string",
      "message": "string"
    }
  }
}

Schema Definitions

AIFilter: object

task:

object

return: arguments:

object

pricing:

object

return: arguments:

object

metric:

object

return: arguments:

object

question:

object

return: arguments:

object

date_and_time:

object

return: arguments:

object

text_cleanup:

object

return: arguments:

object

sentiment:

object

return: arguments:

object

Example

{
  "task": {
    "return": "string",
    "arguments": {}
  },
  "pricing": {
    "return": "string",
    "arguments": {}
  },
  "metric": {
    "return": "string",
    "arguments": {}
  },
  "question": {
    "return": "string",
    "arguments": {}
  },
  "date_and_time": {
    "return": "string",
    "arguments": {}
  },
  "text_cleanup": {
    "return": "string",
    "arguments": {}
  },
  "sentiment": {
    "return": "string",
    "arguments": {}
  }
}

Attendee: object

displayName: email: phoneNumber:

Example

{
  "displayName": "string",
  "email": "string",
  "phoneNumber": "string"
}

AudioUploadInput: object

url: title: attendees: webhook:

Example

{
  "url": "string",
  "title": "string",
  "attendees": [
    {
      "displayName": "string",
      "email": "string",
      "phoneNumber": "string"
    }
  ],
  "webhook": "string"
}

AudioUploadStatus: object

success:

object

return: arguments:

object

title:

object

return: arguments:

object

message:

object

return: arguments:

object

Example

{
  "success": {
    "return": "boolean",
    "arguments": {}
  },
  "title": {
    "return": "string",
    "arguments": {}
  },
  "message": {
    "return": "string",
    "arguments": {}
  }
}

Boolean: boolean

The Boolean scalar type represents true or false.

CacheControlScope: string

object

PUBLIC

object

PRIVATE

Float: number

The Float scalar type represents signed double-precision fractional values as specified by IEEE 754.

Int: number

The Int scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.

MeetingAttendee: object

displayName:

object

return: arguments:

object

email:

object

return: arguments:

object

phoneNumber:

object

return: arguments:

object

name:

object

return: arguments:

object

location:

object

return: arguments:

object

Example

{
  "displayName": {
    "return": "string",
    "arguments": {}
  },
  "email": {
    "return": "string",
    "arguments": {}
  },
  "phoneNumber": {
    "return": "string",
    "arguments": {}
  },
  "name": {
    "return": "string",
    "arguments": {}
  },
  "location": {
    "return": "string",
    "arguments": {}
  }
}

Role: string

object

admin

object

user

object

viewer

Sentence: object

index:

object

return: arguments:

object

text:

object

return: arguments:

object

raw_text:

object

return: arguments:

object

start_time:

object

return: arguments:

object

end_time:

object

return: arguments:

object

speaker_id:

object

return: arguments:

object

speaker_name:

object

return: arguments:

object

ai_filters:

object

return: arguments:

object

Example

{
  "index": {
    "return": "number",
    "arguments": {}
  },
  "text": {
    "return": "string",
    "arguments": {}
  },
  "raw_text": {
    "return": "string",
    "arguments": {}
  },
  "start_time": {
    "return": "number",
    "arguments": {}
  },
  "end_time": {
    "return": "number",
    "arguments": {}
  },
  "speaker_id": {
    "return": "number",
    "arguments": {}
  },
  "speaker_name": {
    "return": "string",
    "arguments": {}
  },
  "ai_filters": {
    "return": {
      "task": {
        "return": "string",
        "arguments": {}
      },
      "pricing": {
        "return": "string",
        "arguments": {}
      },
      "metric": {
        "return": "string",
        "arguments": {}
      },
      "question": {
        "return": "string",
        "arguments": {}
      },
      "date_and_time": {
        "return": "string",
        "arguments": {}
      },
      "text_cleanup": {
        "return": "string",
        "arguments": {}
      },
      "sentiment": {
        "return": "string",
        "arguments": {}
      }
    },
    "arguments": {}
  }
}

String: string

The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

Transcript: object

id:

object

return: arguments:

object

sentences:

object

return: arguments:

object

title:

object

return: arguments:

object

host_email:

object

return: arguments:

object

organizer_email:

object

return: arguments:

object

user:

object

return: arguments:

object

fireflies_users:

object

return: arguments:

object

participants:

object

return: arguments:

object

date:

object

return: arguments:

object

transcript_url:

object

return: arguments:

object

audio_url:

object

return: arguments:

object

duration:

object

return: arguments:

object

meeting_attendees:

object

return: arguments:

object

Example

{
  "id": {
    "return": "string",
    "arguments": {}
  },
  "sentences": {
    "return": [
      {
        "index": {
          "return": "number",
          "arguments": {}
        },
        "text": {
          "return": "string",
          "arguments": {}
        },
        "raw_text": {
          "return": "string",
          "arguments": {}
        },
        "start_time": {
          "return": "number",
          "arguments": {}
        },
        "end_time": {
          "return": "number",
          "arguments": {}
        },
        "speaker_id": {
          "return": "number",
          "arguments": {}
        },
        "speaker_name": {
          "return": "string",
          "arguments": {}
        },
        "ai_filters": {
          "return": {
            "task": {
              "return": "string",
              "arguments": {}
            },
            "pricing": {
              "return": "string",
              "arguments": {}
            },
            "metric": {
              "return": "string",
              "arguments": {}
            },
            "question": {
              "return": "string",
              "arguments": {}
            },
            "date_and_time": {
              "return": "string",
              "arguments": {}
            },
            "text_cleanup": {
              "return": "string",
              "arguments": {}
            },
            "sentiment": {
              "return": "string",
              "arguments": {}
            }
          },
          "arguments": {}
        }
      }
    ],
    "arguments": {}
  },
  "title": {
    "return": "string",
    "arguments": {}
  },
  "host_email": {
    "return": "string",
    "arguments": {}
  },
  "organizer_email": {
    "return": "string",
    "arguments": {}
  },
  "user": {
    "return": {
      "user_id": {
        "return": "string",
        "arguments": {}
      },
      "email": {
        "return": "string",
        "arguments": {}
      },
      "name": {
        "return": "string",
        "arguments": {}
      },
      "num_transcripts": {
        "return": "number"
      }
    }
  }
}

User: object

user_id:

object

return: arguments:

object

email:

object

return: arguments:

object

name:

object

return: arguments:

object

num_transcripts:

object

return: arguments:

object

recent_transcript:

object

return: arguments:

object

recent_meeting:

object

return: arguments:

object

minutes_consumed:

object

return: arguments:

object

is_admin:

object

return: arguments:

object

integrations:

object

return: arguments:

object

Example

{
  "user_id": {
    "return": "string",
    "arguments": {}
  },
  "email": {
    "return": "string",
    "arguments": {}
  },
  "name": {
    "return": "string",
    "arguments": {}
  },
  "num_transcripts": {
    "return": "number",
    "arguments": {}
  },
  "recent_transcript": {
    "return": "string",
    "arguments": {}
  },
  "recent_meeting": {
    "return": "string",
    "arguments": {}
  },
  "minutes_consumed": {
    "return": "number",
    "arguments": {}
  },
  "is_admin": {
    "return": "boolean",
    "arguments": {}
  },
  "integrations": {
    "return": [
      "string"
    ],
    "arguments": {}
  }
}