# Create Conference — Vivomeetings

> Creates a new conference in VivoMeetings. See the documentation

- Key: `vivomeetings-create-conference`
- Type: Action (Write)
- Version: 0.0.2
- App: Vivomeetings (`vivomeetings`) — https://pipedream.com/apps/vivomeetings.md
- This page (HTML): https://pipedream.com/apps/vivomeetings/actions/create-conference
- Hints: open-world
- Source: https://github.com/PipedreamHQ/pipedream/blob/master/components/vivomeetings/actions/create-conference/create-conference.mjs

## Description

Creates a new conference in VivoMeetings. [See the documentation](https://docs.google.com/viewerng/viewer?url=https://vivomeetings.com/wp-content/uploads/2023/01/Partner-APIs-v1.41.docx-1.pdf)

## Props

| Prop | Type | Required | Description |
|---|---|---|---|
| `companyId` | `string` | Yes | The Id of the company. |
| `hostId` | `string` | Yes | The Id of the host. Options are loaded from the connected account. |
| `subject` | `string` | Yes | The subject of the meeting. |
| `agenda` | `string` | Yes | The description of the meeting. |
| `start` | `string` | Yes | Start time, this works in conjunction with the time_zone to set the correct time. |
| `timeZone` | `string` | Yes | Time zone associated with the start time. In the IANA Time Zone database (https://www.iana.org/time-zones) |
| `duration` | `integer` | Yes | Duration in minutes. |
| `autoRecord` | `string` | No | Indicates whether the conference should be recorded automatically and the format. If omitted will default to none. Both record and stream must be the same value if recording and streaming together. |
| `autoStream` | `string` | No | Indicates whether the conference should be streamed automatically and the format. If omitted will default to none. Both record and stream must be the same value if recording and streaming together. |
| `autoTranscribe` | `boolean` | No | Whether the recording should automatically be transcribed. Valid values are true or false. If omitted will default to false. |
| `oneTimeAccessCode` | `boolean` | Yes | When set to true an access code will be returned in the response. |
| `secureUrl` | `boolean` | No | When set to true the room_url will contain an encrypted access code. Best when used with one_time_access_code. |
| `hostInitiatedRecording` | `boolean` | No | Providing this parameter will change the trigger for automatically starting recording or streaming to also include the host joining the call. |
| `securityPin` | `string` | Yes | Pin required to access the conference. |
| `muteMode` | `string` | Yes | Sets the initial participant mute settings. |
| `participants` | `string[]` | Yes | The unique identification of the contacts. Options are loaded from the connected account. |
| `participantEmails` | `string[]` | No | Alternatively participants can be listed via emails with moderators specified. If a participant’s emails is not on the host’s contact list, it will be added. |

## 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": "vivomeetings",
      },
    },
  },
)

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: "vivomeetings-create-conference",
  arguments: {
    companyId: "Company Id",
    hostId: "Host 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: "vivomeetings-create-conference",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    vivomeetings: { authProvisionId: "apn_xxxxxxx" },
    companyId: "Company Id",
    hostId: "Host 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": "vivomeetings-create-conference",
    "configured_props": {
      "vivomeetings": { "authProvisionId": "apn_xxxxxxx" },
      "companyId": "Company Id",
      "hostId": "Host Id"
    }
  }'
```

---

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