# Get Publication Info — Beehiiv

> Get details about the current beehiiv publication, including name, URL, and subscriber stats. Call this first to get the publicationId needed by all other tools. If you have multiple publications, pass the publicationId — otherwise the…

- Key: `beehiiv-get-publication-info`
- Type: Action (Read-only)
- Version: 0.0.2
- App: Beehiiv (`beehiiv`) — https://pipedream.com/apps/beehiiv.md
- This page (HTML): https://pipedream.com/apps/beehiiv/actions/get-publication-info
- Hints: read-only
- Source: https://github.com/PipedreamHQ/pipedream/blob/master/components/beehiiv/actions/get-publication-info/get-publication-info.ts

## Description

Get details about the current beehiiv publication, including name, URL, and subscriber stats. **Call this first** to get the `publicationId` needed by all other tools. If you have multiple publications, pass the `publicationId` — otherwise the first publication is returned. Returns the publication name, description, URL, creation date, and subscriber count. [See the documentation](https://developers.beehiiv.com/api-reference/publications/index)

## Props

| Prop | Type | Required | Description |
|---|---|---|---|
| `publicationId` | `string` | No | The publication ID. Leave empty to return the first (or only) publication in the account. |

## Run it

**MCP**

```ts
import { Client } from "@modelcontextprotocol/sdk/client/index.js"
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js"
import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const accessToken = await pd.rawAccessToken

const transport = new StreamableHTTPClientTransport(
  new URL("https://remote.mcp.pipedream.net/v3"),
  {
    requestInit: {
      headers: {
        Authorization: `Bearer ${accessToken}`,
        "x-pd-project-id": process.env.PIPEDREAM_PROJECT_ID!,
        "x-pd-environment": "production",
        "x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
        "x-pd-app-slug": "beehiiv",
      },
    },
  },
)

const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)

const { tools } = await mcp.listTools()

// listTools() hands your model this tool's input schema, so it can
// fill the arguments itself:
const result = await mcp.callTool({
  name: "beehiiv-get-publication-info",
  arguments: {
    publicationId: "Publication ID",
  },
})
```

**TypeScript**

```ts
import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const result = await pd.actions.run({
  id: "beehiiv-get-publication-info",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    beehiiv: { authProvisionId: "apn_xxxxxxx" },
    publicationId: "Publication ID",
  },
})

console.log(result)
```

**cURL**

```bash
curl -X POST https://api.pipedream.com/v1/connect/{project_id}/actions/run \
  -H "Content-Type: application/json" \
  -H "X-PD-Environment: production" \
  -H "Authorization: Bearer {access_token}" \
  -d '{
    "external_user_id": "{external_user_id}",
    "id": "beehiiv-get-publication-info",
    "configured_props": {
      "beehiiv": { "authProvisionId": "apn_xxxxxxx" },
      "publicationId": "Publication ID"
    }
  }'
```

---

- App: https://pipedream.com/apps/beehiiv.md · All apps: https://pipedream.com/apps
