# Grain

> Meeting recording and intelligence platform for accessing recordings, transcripts, AI summaries, and team data.

Source: https://cotera.co/docs/reference/tools/individual-tools/grain

---

**Authentication Type:** API Key
**Description:** Meeting recording and intelligence platform for accessing recordings, transcripts, AI summaries, and team data.

***

## Authentication

To authenticate, you'll need a Grain API key. Learn how to create one in the [Grain documentation](https://grain.com/public-api).

Navigate to **Settings > Integrations > Public API** to generate your API key.

***

## Recordings

Operations for accessing meeting recordings and transcripts.

### List Recordings

List recordings with optional filters for title, date range, participants, and team.

**Operation Type:** Query (Read)

**Parameters:**

* **titleSearch** `string` (nullable): Search recordings by title
* **startDateFrom** `string` (nullable): Filter recordings starting from this ISO date
* **startDateTo** `string` (nullable): Filter recordings starting before this ISO date
* **participantScope** `string` (nullable): Filter by participant scope (internal, external, all)
* **teamId** `string` (nullable): Filter by team ID
* **meetingTypeId** `string` (nullable): Filter by meeting type ID
* **cursor** `string` (nullable): Pagination cursor from a previous response
* **limit** `number` (nullable): Maximum recordings to return (default 20, max 100)

**Returns:**

* **recordings** `array of objects`: Array of recordings
  * **id** `string`: Recording ID
  * **title** `string`: Recording title
  * **url** `string`: URL to view the recording in Grain
  * **startDate** `string`: ISO timestamp of recording start
  * **endDate** `string`: ISO timestamp of recording end
  * **duration** `number`: Duration in seconds
  * **ownerEmail** `string` (nullable): Owner's email address
* **cursor** `string` (nullable): Cursor for next page

**Example Usage:**

```json
{
  "titleSearch": "product review",
  "startDateFrom": "2024-01-01T00:00:00Z",
  "startDateTo": "2024-03-31T23:59:59Z",
  "participantScope": null,
  "teamId": null,
  "meetingTypeId": null,
  "cursor": null,
  "limit": 20
}
```

### Get Recording

Get full details of a specific recording with optional includes for participants, highlights, AI summary, and action items.

**Operation Type:** Query (Read)

**Parameters:**

* **recordingId** `string` (required): The recording ID to retrieve
* **includeParticipants** `boolean` (nullable): Include participant list (default false)
* **includeHighlights** `boolean` (nullable): Include highlights/clips (default false)
* **includeAiSummary** `boolean` (nullable): Include AI-generated summary (default false)
* **includeAiActionItems** `boolean` (nullable): Include AI-generated action items (default false)

**Returns:**

* **recording** `object`: Recording details
  * **id** `string`: Recording ID
  * **title** `string`: Recording title
  * **url** `string`: URL to view the recording
  * **startDate** `string`: Recording start time
  * **endDate** `string`: Recording end time
  * **duration** `number`: Duration in seconds
  * **ownerEmail** `string` (nullable): Owner's email
  * **participants** `array of objects` (nullable): Meeting participants (if requested)
    * **email** `string`: Participant email
    * **name** `string` (nullable): Participant name
  * **highlights** `array of objects` (nullable): Recording highlights (if requested)
    * **id** `string`: Highlight ID
    * **title** `string` (nullable): Highlight title
    * **transcript** `string` (nullable): Highlight transcript text
  * **aiSummary** `string` (nullable): AI-generated meeting summary (if requested)
  * **aiActionItems** `array of strings` (nullable): AI-generated action items (if requested)

**Example Usage:**

```json
{
  "recordingId": "rec_abc123def456",
  "includeParticipants": true,
  "includeHighlights": false,
  "includeAiSummary": true,
  "includeAiActionItems": true
}
```

### Get Transcript

Get the full transcript of a recording with speaker labels and timestamps.

**Operation Type:** Query (Read)

**Parameters:**

* **recordingId** `string` (required): The recording ID to get the transcript for

**Returns:**

* **segments** `array of objects`: Transcript segments
  * **speaker** `string` (nullable): Speaker name or identifier
  * **text** `string`: Spoken text
  * **startTime** `number`: Start time in seconds
  * **endTime** `number`: End time in seconds

**Example Usage:**

```json
{
  "recordingId": "rec_abc123def456"
}
```

***

## Users

Operations for accessing workspace user data.

### List Users

List all users in the Grain workspace.

**Operation Type:** Query (Read)

**Parameters:**

No parameters required.

**Returns:**

* **users** `array of objects`: Array of workspace users
  * **id** `string`: User ID
  * **email** `string`: User email
  * **name** `string` (nullable): User display name

**Example Usage:**

```json
{}
```

***

## Teams

Operations for accessing team data.

### List Teams

List all teams in the Grain workspace.

**Operation Type:** Query (Read)

**Parameters:**

No parameters required.

**Returns:**

* **teams** `array of objects`: Array of teams
  * **id** `string`: Team ID
  * **name** `string`: Team name

**Example Usage:**

```json
{}
```

***

## Meeting Types

Operations for accessing meeting type definitions.

### List Meeting Types

List all configured meeting types in the workspace.

**Operation Type:** Query (Read)

**Parameters:**

No parameters required.

**Returns:**

* **meetingTypes** `array of objects`: Array of meeting types
  * **id** `string`: Meeting type ID
  * **name** `string`: Meeting type name

**Example Usage:**

```json
{}
```

***

## Common Use Cases

**Meeting Intelligence:**

* Search recordings by title or date range to find specific meetings
* Get AI summaries and action items for quick meeting recaps
* Retrieve full transcripts for detailed review or compliance

**Sales & Customer Success:**

* Filter recordings by participant scope (external) to find customer calls
* Extract action items from sales calls for follow-up tracking
* Review highlights and key moments from customer meetings

**Team Management:**

* List recordings by team to monitor meeting volume and patterns
* Filter by meeting type to analyze different types of calls
* Use transcripts for coaching and training purposes

**Data & Reporting:**

* List users and teams for organizational mapping
* Aggregate recording data across date ranges for meeting analytics
* Export transcripts for integration with other analysis tools

