---
title: "Meetings inbox (the Google Meet script)"
description: "Where the Connect Google Meet script sends one Google Doc: {source: \"google-meet-script\", file_id, title, created, kind_hint, text, doc_url, backfill}."
canonical_url: https://docs.markdrop.in/api/meetings/meetings-inbox-the-google-meet-script
last_updated: 2026-11-05
site: "Markdrop Docs"
index: https://docs.markdrop.in/llms.txt
---

# Meetings inbox (the Google Meet script)

`POST https://api.markdrop.in/api/v1/meetings/inbox`

Where the Connect Google Meet script sends one Google Doc: `{source: "google-meet-script", file_id, title, created, kind_hint, text, doc_url, backfill}`. `backfill: true` marks a past meeting from the script's backfill: it's imported as history, and nobody is notified about it (its @mentions stay links). The meeting is dated by the date in Google's title, else by `created` in the connector's time zone. Authenticated with the script's `meetings:import` token (Bearer `mdk_…`), which works here and nowhere else and is pinned to one workspace; its owner must still be a member. Idempotent on `file_id`: returns `{status, meeting_id?, url?}` with `status` `imported` (a new meeting), `attached` (the other half of a call already in the workspace: notes for a transcript, or the other way round), `duplicate` (already here: the same Doc, a Doc imported by hand, or the same call by name, date and start time) or `ignored` (no transcript or notes in it). 401 when disconnected, 403 when no longer a member, 409 while the same Doc is being imported, 413 over 1,500,000 characters, 422 for a malformed delivery. Rate limited per token: 30 a minute, 600 a day.

- **Authentication:** API token required: `Authorization: Bearer mdk_…`.
- **Rate limit:** 600 per day, 30 per minute per IP address.
- **Guide:** [Import meetings automatically](https://docs.markdrop.in/workspaces/meetings-auto-import)

## Request body

`application/json`, required.

- `source` ("google-meet-script"): Default `"google-meet-script"`.
- `file_id` (string, required): 1–200 characters.
- `title` (string): Shown on the page and in link previews. Up to 500 characters.
- `created` (string): Up to 40 characters.
- `kind_hint` ("transcript" | "notes")
- `text` (string, required)
- `doc_url` (string): Up to 500 characters.
- `backfill` (boolean): Default `false`.

## Responses

- `200`: OK.
- `401`: No token, or the token is revoked or mistyped.
- `429`: Too many requests from your IP address. Wait the seconds in `Retry-After`.

## Examples

**curl**

```bash
curl -X POST https://api.markdrop.in/api/v1/meetings/inbox \
  -H "Authorization: Bearer $MARKDROP_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
       "source": "google-meet-script",
       "file_id": "1AbCdEfGhIjKlMnOpQrStUvWxYz",
       "title": "Weekly sync (2026-11-04 10:00 GMT+05:30) - Transcript",
       "created": "2026-11-04T05:20:00.000Z",
       "kind_hint": "transcript",
       "text": "Ada Lovelace: Let'\''s ship on Friday.\nBo Chen: Agreed.",
       "doc_url": "https://docs.google.com/document/d/1AbCdEfGhIjKlMnOpQrStUvWxYz/edit"
     }'
```

**JavaScript**

```javascript
const res = await fetch("https://api.markdrop.in/api/v1/meetings/inbox", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.MARKDROP_TOKEN}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    "source": "google-meet-script",
    "file_id": "1AbCdEfGhIjKlMnOpQrStUvWxYz",
    "title": "Weekly sync (2026-11-04 10:00 GMT+05:30) - Transcript",
    "created": "2026-11-04T05:20:00.000Z",
    "kind_hint": "transcript",
    "text": "Ada Lovelace: Let's ship on Friday.\nBo Chen: Agreed.",
    "doc_url": "https://docs.google.com/document/d/1AbCdEfGhIjKlMnOpQrStUvWxYz/edit"
  }),
});
const data = await res.json();
```

**Python**

```python
import os

import requests

r = requests.post(
    "https://api.markdrop.in/api/v1/meetings/inbox",
    headers={"Authorization": f"Bearer {os.environ['MARKDROP_TOKEN']}"},
    json={
        "source": "google-meet-script",
        "file_id": "1AbCdEfGhIjKlMnOpQrStUvWxYz",
        "title": "Weekly sync (2026-11-04 10:00 GMT+05:30) - Transcript",
        "created": "2026-11-04T05:20:00.000Z",
        "kind_hint": "transcript",
        "text": "Ada Lovelace: Let's ship on Friday.\nBo Chen: Agreed.",
        "doc_url": "https://docs.google.com/document/d/1AbCdEfGhIjKlMnOpQrStUvWxYz/edit",
    },
)
r.raise_for_status()
print(r.json())
```
