> For a complete page index, fetch https://developer.close.com/llms.txt

# Get a single Meeting activity

GET https://api.close.com/api/v1/activity/meeting/{id}/

Meeting transcripts can be accessed using this API but are not loaded by default. To load transcripts, use the `_fields` parameter with `transcripts` value.

The `transcripts` field is an array of objects for each Close Notetaker bot that joined the meeting. Typically, there will be only one transcript. Transcripts are ordered by the time bots joined the meeting.

Example transcripts in response:

```json
{ "transcripts": [ { "utterances": [ { "speaker_label": "John Lead", "speaker_side": "contact", "start": 0.1, "end": 1.2, "text": "Hey, what's up? How is it going?" }, { "speaker_label": "Jane User", "speaker_side": "close-user", "start": 1.3, "end": 2.4, "text": "Hey John, I'm doing great. How about you?" } ], "summary_text": "Summary text", "summary_html": "<p>Summary text</p>" } ] }
```

Reference: https://developer.close.com/api/resources/activities/meetings/get

## Authentication

- `Authorization` header (basic auth, required) — Use your API key as the username and leave the password empty.
- `Authorization` header (bearer token, required)

## Request

### Path parameters

- `id` (string, required)

### Query parameters

- `_fields` (string, optional) — Comma-separated list of fields to include in the response.

## Response

### 200

Successful response

- `_type` (string, required)
- `activity_at` (datetime, required, nullable)
- `actual_duration` (integer, required, nullable)
- `attached_call_ids` (list of string, required)
- `attendees` (list of object, required)
  - `contact_id` (string, required, nullable)
  - `email` (string, required, nullable)
  - `is_organizer` (boolean, required, nullable)
  - `name` (string, required, nullable)
  - `status` (string, required, nullable)
  - `user_id` (string, required, nullable)
- `calendar_event_link` (string, required, nullable)
- `calendar_event_uids` (list of string, required)
- `conference_links` (list of object, required)
  - `type` (enum, required)
    - Allowed values: `ZOOM`, `GOOGLE_MEET`, `GOOGLE_HANGOUTS`, `MICROSOFT_TEAMS`, `SKYPE`, `WEBEX`, `GO_TO_MEETING`
  - `url` (string, required)
- `connected_account_id` (string, required, nullable)
- `contact_id` (string, required, nullable)
- `conversation_type_id` (string, required, nullable)
- `conversation_type_reason` (enum, required, nullable)
  - Allowed values: `user-selected`, `autodetected`
- `created_by` (string, required, nullable)
- `date_created` (datetime, required)
- `date_updated` (datetime, required)
- `duration` (integer, required)
- `ends_at` (datetime, required)
- `id` (string, required)
- `integrations` (list of map from string to any, required)
- `is_recurring` (boolean, required)
- `lead_id` (string, required, nullable)
- `location` (string, required)
- `note` (string, required)
- `notetaker_id` (string, required, nullable)
- `organization_id` (string, required)
- `outcome_autofill_confidence` (enum, required, nullable)
  - Allowed values: `low`, `medium`, `high`
- `outcome_autofill_reasoning` (string, required, nullable)
- `outcome_id` (string, required, nullable)
- `outcome_reason` (enum, required, nullable)
  - Allowed values: `autofilled`, `user-selected`, `voicemail-dropped`
- `playbook_id` (string, required, nullable)
- `playbook_reason` (enum, required, nullable)
  - Allowed values: `user-selected`, `autodetected`
- `provider_calendar_event_id` (string, required, nullable)
- `provider_calendar_ids` (list of string, required)
- `provider_calendar_type` (enum, required, nullable)
  - Allowed values: `google`, `microsoft`
- `source` (enum, required)
  - Allowed values: `calendar`, `manual`
- `starts_at` (datetime, required)
- `status` (enum, required, nullable)
  - Allowed values: `upcoming`, `in-progress`, `completed`, `canceled`, `declined-by-org`, `declined-by-lead`
- `summary` (object, required, nullable)
  - `html` (string, required)
  - `text` (string, required)
- `title` (string, required)
- `updated_by` (string, required, nullable)
- `user_id` (string, required, nullable)
- `user_note` (string, required, nullable)
- `user_note_date_updated` (datetime, required, nullable)
- `user_note_html` (string, required, nullable)
- `user_note_mentions` (list of string, required)
- `users` (list of string, required)
- `_paused_subscriptions` (list of object, optional)
  - `contact_id` (string, required, nullable)
  - `contact_name` (string, required, nullable)
  - `id` (string, required)
  - `sequence_id` (string, required)
  - `sequence_name` (string, required)
  - `sequence_status` (string, required)
- `comment_summary` (object, optional, nullable)
  - `comment_count` (integer, required)
  - `thread_id` (string, required)
- `created_by_name` (string, optional, nullable)
- `transcripts` (list of object, optional)
  - `has_speaker_labels` (boolean, required)
  - `id` (string, required)
  - `speakers` (list of object, required)
    - `speaker_label` (string, required)
    - `speaker_side` (enum, required, nullable)
      - Allowed values: `contact`, `close-user`, `voice-agent`
    - `talk_percentage` (double, required)
    - `talk_time` (double, required)
  - `summary_text` (string, required, nullable)
  - `utterances` (list of object, required)
    - `end` (double, required)
    - `speaker_label` (string, required)
    - `speaker_side` (enum, required, nullable)
      - Allowed values: `contact`, `close-user`, `voice-agent`
    - `start` (double, required)
    - `text` (string, required)
    - `words` (list of object, optional)
      - `end` (double, required, nullable)
      - `start` (double, required, nullable)
      - `text` (string, required)
  - `summary_html` (string, optional, nullable)
- `updated_by_name` (string, optional, nullable)
- `user_name` (string, optional, nullable)

## Examples

**Response**

```json
{
  "_type": "Meeting",
  "activity_at": "2019-10-11T16:30:00+00:00",
  "actual_duration": null,
  "attached_call_ids": [],
  "attendees": [
    {
      "contact_id": "cont_V3RuqD9VJKJWOtPsoH7EMy3MnKoFED2Ulgd4g87Ayqc",
      "email": "bruce@wayneenterprises.com",
      "is_organizer": false,
      "name": null,
      "status": "noreply",
      "user_id": null
    },
    {
      "contact_id": null,
      "email": "jane@example.com",
      "is_organizer": true,
      "name": null,
      "status": "yes",
      "user_id": "user_Ova4RGFG7pztSeJiiMFdN7O2MFl71nD0uGO3bIOo4Wk"
    }
  ],
  "calendar_event_link": "https://www.google.com/calendar/event?eid=NzlrNGRoMmk5bm9jZDEwOGtjMmY3Y2RzODggamFuZUBleGFtcGxlLmNvbQ",
  "calendar_event_uids": [
    "79k4dh2i9nocd108kc2f7cds88"
  ],
  "conference_links": [
    {
      "type": "ZOOM",
      "url": "https://zoom.us/j/zoommeeting"
    }
  ],
  "connected_account_id": "emailacct_OoSyqxjm1HbuxcRsOyrm2SwR1uOTBdHKPdhAaf9mhUp",
  "contact_id": null,
  "conversation_type_id": null,
  "conversation_type_reason": null,
  "created_by": "user_Ova4RGFG7pztSeJiiMFdN7O2MFl71nD0uGO3bIOo4Wk",
  "date_created": "2019-10-11T16:30:00+00:00",
  "date_updated": "2019-10-11T16:30:00.368000+00:00",
  "duration": 3600,
  "ends_at": "2019-10-11T17:30:00+00:00",
  "id": "acti_qwA2IPmjYyMQQ2UWuNxBOtc2CbZtRUOb5JkS1i3Qo1b",
  "integrations": [],
  "is_recurring": false,
  "lead_id": "lead_Qq33JAqr6zrgqtJGkKv7XQxTnQxpTEJA7Mfcx98ZrWe",
  "location": "https://zoom.us/j/zoommeeting",
  "note": "──────────\nJane User is inviting you to a scheduled Zoom meeting to find out if you're really Batman.\n\nJoin Zoom Meeting\nhttps://zoom.us/j/zoommeeting\n\n──────────",
  "notetaker_id": null,
  "organization_id": "orga_RbREgmiiwcr1w2b4cOnCMQaQPSIFxMqAD2Dh243uxcH",
  "outcome_autofill_confidence": null,
  "outcome_autofill_reasoning": null,
  "outcome_id": null,
  "outcome_reason": null,
  "playbook_id": null,
  "playbook_reason": null,
  "provider_calendar_event_id": "79k4dh2i9nocd108kc2f7cds88",
  "provider_calendar_ids": [
    "primary"
  ],
  "provider_calendar_type": "google",
  "source": "calendar",
  "starts_at": "2019-10-11T16:30:00+00:00",
  "status": "in-progress",
  "summary": null,
  "title": "Bruce Wayne Interview",
  "updated_by": "user_Ova4RGFG7pztSeJiiMFdN7O2MFl71nD0uGO3bIOo4Wk",
  "user_id": "user_Ova4RGFG7pztSeJiiMFdN7O2MFl71nD0uGO3bIOo4Wk",
  "user_note": null,
  "user_note_date_updated": null,
  "user_note_html": null,
  "user_note_mentions": [],
  "users": [
    "user_Ova4RGFG7pztSeJiiMFdN7O2MFl71nD0uGO3bIOo4Wk"
  ],
  "created_by_name": "Jane User",
  "updated_by_name": "Jane User",
  "user_name": "Jane User"
}
```

**SDK Code**

```python activities.meetings_get_example
import requests

url = "https://api.close.com/api/v1/activity/meeting/id/"

response = requests.get(url, auth=("<CLOSE_API_KEY>", ""))

print(response.json())
```

```javascript activities.meetings_get_example
const url = 'https://api.close.com/api/v1/activity/meeting/id/';
const credentials = btoa("<CLOSE_API_KEY>:");

const options = {method: 'GET', headers: {Authorization: `Basic ${credentials}`}};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go activities.meetings_get_example
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api.close.com/api/v1/activity/meeting/id/"

	req, _ := http.NewRequest("GET", url, nil)

	req.SetBasicAuth("<CLOSE_API_KEY>", "")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby activities.meetings_get_example
require 'uri'
require 'net/http'

url = URI("https://api.close.com/api/v1/activity/meeting/id/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request.basic_auth("<CLOSE_API_KEY>", "")

response = http.request(request)
puts response.read_body
```

```java activities.meetings_get_example
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://api.close.com/api/v1/activity/meeting/id/")
  .basicAuth("<CLOSE_API_KEY>", "")
  .asString();
```

```php activities.meetings_get_example
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://api.close.com/api/v1/activity/meeting/id/', [
  'headers' => [
  ],
    'auth' => ['<CLOSE_API_KEY>', ''],
]);

echo $response->getBody();
```

```csharp activities.meetings_get_example
using RestSharp;
using RestSharp.Authenticators;

var client = new RestClient("https://api.close.com/api/v1/activity/meeting/id/");
client.Authenticator = new HttpBasicAuthenticator("<CLOSE_API_KEY>", "");
var request = new RestRequest(Method.GET);

IRestResponse response = client.Execute(request);
```