# Luma — Pipedream Connect

> Set up an event page, invite friends and sell tickets. Host a memorable event today.

- API slug: `luma` (use in MCP headers and tool keys)
- Auth: API key (Pipedream-managed)
- Categories: Marketing
- Website: http://luma.com
- This page (HTML): https://pipedream.com/apps/luma
- Tools: 8 actions · 0 triggers

## Connect via MCP (recommended)

- Endpoint: `https://remote.mcp.pipedream.net/v3`
- Headers: `Authorization: Bearer <token>` · `x-pd-project-id` · `x-pd-environment` · `x-pd-external-user-id` · `x-pd-app-slug: luma`

```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": "luma",
      },
    },
  },
)

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

const { tools } = await mcp.listTools()

// e.g. run Add Guests:
const result = await mcp.callTool({
  name: "luma-add-guests",
  arguments: {
    eventId: "Event ID",
    guestsJson: "Guests",
  },
})
```

Docs: [MCP guide](https://pipedream.com/docs/connect/mcp/developers.md)

## API proxy

For a Luma endpoint with no pre-built tool, the proxy forwards your request with the connected user's credentials attached.

```bash
# The path segment is the target URL, URL-safe base64 encoded:
# https://public-api.luma.com/v1/user/get-self

curl "https://api.pipedream.com/v1/connect/{project_id}/proxy/aHR0cHM6Ly9wdWJsaWMtYXBpLmx1bWEuY29tL3YxL3VzZXIvZ2V0LXNlbGY?external_user_id={external_user_id}&account_id=apn_xxxxxxx" \
  -H "Authorization: Bearer {access_token}" \
  -H "x-pd-environment: production"
```

Docs: [API proxy guide](https://pipedream.com/docs/connect/api-proxy.md)

## SDK

```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: "luma-add-guests",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    luma: { authProvisionId: "apn_xxxxxxx" },
    eventId: "Event ID",
    guestsJson: "Guests",
  },
})
```

Docs: [Managed auth guide](https://pipedream.com/docs/connect/managed-auth/quickstart.md) · [Tools guide](https://pipedream.com/docs/connect/components.md)

## Actions (8)

### `luma-add-guests` — Add Guests (Write)

Add guests to a Luma event with status Going. Guests receive the default ticket type unless Ticket JSON or Tickets JSON is provided. Use List Events first if you need to find the event ID, and List Ticket Types if assigning custom tickets. See the documentation

Full schema: https://pipedream.com/apps/luma/actions/add-guests.md

### `luma-create-event` — Create Event (Write)

Create an event on the connected Luma calendar. Required datetime fields must be ISO 8601 strings and Timezone must be an IANA timezone like America/New_York. See the documentation

Full schema: https://pipedream.com/apps/luma/actions/create-event.md

### `luma-get-event` — Get Event (Read-only)

Get admin details for a Luma event the connected calendar can manage. Use List Events first if you need to find the event ID. See the documentation

Full schema: https://pipedream.com/apps/luma/actions/get-event.md

### `luma-get-guest` — Get Guest (Read-only)

Get detailed information for a Luma event guest by guest ID, ticket key, guest key, or email. Use Get Guests first if you need to find a guest identifier. See the documentation

Full schema: https://pipedream.com/apps/luma/actions/get-guest.md

### `luma-get-guests` — Get Guests (Read-only)

List guests who registered for, were invited to, or are waitlisted for a Luma event. Omit Approval Status to include all guest statuses. Use List Events first if you need to find the event ID. See the documentation

Full schema: https://pipedream.com/apps/luma/actions/get-guests.md

### `luma-list-events` — List Events (Read-only)

List events managed by the connected Luma calendar. Use this to find event IDs for Get Event, Get Guests, Add Guests, or Send Invites. This only returns events managed by the calendar, not external events merely listed on it. See the documentation

Full schema: https://pipedream.com/apps/luma/actions/list-events.md

### `luma-list-ticket-types` — List Ticket Types (Read-only)

List ticket types for a Luma event. Use this before assigning custom tickets through Luma's guest-management APIs. See the documentation

Full schema: https://pipedream.com/apps/luma/actions/list-ticket-types.md

### `luma-send-invites` — Send Invites (Write)

Send email invitations for a Luma event. Guests are invited but not automatically marked as going. Use Add Guests when guests should be added with status Going. See the documentation

Full schema: https://pipedream.com/apps/luma/actions/send-invites.md

---

- All apps: https://pipedream.com/apps — index: https://pipedream.com/llms.txt
- Pipedream docs for agents: https://pipedream.com/docs/llms.txt
