# Provisioning a Meeting Agent

> **BETA**

When [creating or updating an event](/developers/api/events/upsert-event/index.md)
add a `meeting_agent` property as specified below to request a Meeting Agent
join the meeting.

In addition, register to receive webhooks for `meeting_agent_activated`, `meeting_agent_complete`, and
`meeting_agent_failed` interactions to react to key events in the Meeting Agent's lifecycle.

If you wish to send a Meeting Agent to a conference that isn't associated with an
event managed through the Cronofy API, you can use the [Schedule/Send a Meeting Agent API](/developers/api/meeting-agents/schedule/index.md).

> **INFO:** To enable this feature you will need to toggle it on in the Features section for your application in the Cronofy developer dashboard.

### Example Request
```http
POST /v1/calendars/cal_n23kjnwrw2_jsdfjksn234/events HTTP/1.1
Host: {data_center_url}
Authorization: Bearer {ACCESS_TOKEN}
Content-Type: application/json; charset=utf-8

{
  "event_id": "qTtZdczOccgaPncGJaCiLg",
  "summary": "Meeting agent enhanced",
  "start": "2026-04-29T15:30:00Z",
  "end": "2026-04-29T17:00:00Z",
  "tzid": "Europe/Berlin",
  "conferencing": {
    "profile_id": "default"
  },
  "meeting_agent": {
    "profile_id": "cronofy"
  },
  "subscriptions": [
    {
      "type": "webhook",
      "uri": "https://example.com/notification",
      "interactions": [
        { "type": "meeting_agent_activated" },
        { "type": "meeting_agent_complete" },
        { "type": "meeting_agent_failed" }
      ]
    }
  ]
}
```

### Parameters
##### `data_center_url` *(required)*

The URL for the data center you want to communicate with. Possible choices are:

- `api-au.cronofy.com` - Australia
- `api-ca.cronofy.com` - Canada
- `api-de.cronofy.com` - Germany
- `api-sg.cronofy.com` - Singapore
- `api-uk.cronofy.com` - United Kingdom
- `api.cronofy.com` - United States

Find out more about [Cronofy's data centers](/developers/data-centers/index.md).
##### `meeting_agent.profile_id` *(required)*

A [`String`](/developers/api/data-types/index.md) value representing the type of
Meeting Agent to provision. One of:

- `cronofy` to provision a Cronofy Meeting Agent

- `none` to de-provision a previously provisioned Meeting Agent if necessary

If the `meeting_agent` parameter is omitted entirely then any existing Meeting
Agent will be left untouched.

##### `meeting_agent.display_name` *(optional)*

The name of the Meeting Agent as displayed when it joins the meeting.

If not provided the Meeting Agent will use the name specified by your [application branding](/developers/application-management/customization/index.md).

##### `meeting_agent.image_url` *(optional)*

An optional URL which hosts an image that the Meeting Agent will display while in the meeting.

This image URL will be accessed for use shortly before the Meeting Agent joins a given meeting, so must remain accessible when scheduling ahead of time.

We recommend a PNG or JPEG image sized to a 16:9 aspect ratio.

If not provided the Meeting Agent will use the image specified by your [application branding](/developers/application-management/customization/index.md).

##### `subscriptions` *(optional)*

Object containing an array of subscriptions.

##### `subscriptions[].type` *(optional)*

Only one value of `webhook` is supported.

##### `subscriptions[].uri` *(optional)*

The URI within your application you want Cronofy to send notifications to when the interaction is triggered. Must be an externally accessible HTTP or HTTPS URI.

##### `subscriptions[].interactions` *(optional)*

An array of interactions that should trigger a call to the `uri`.

##### `subscriptions[].interactions[].type` *(optional)*

The type of interaction. Currently supported are:

- `meeting_agent_activated` - sent when the Meeting Agent is preparing to
join the meeting.

- `meeting_agent_complete` - sent when the Meeting Agent has successfully joined
the meeting, captured data from it, and processed those into resources it has
made available for download

- `meeting_agent_failed` - sent when the Meeting Agent was unable to run
successfully

### Callback notifications
Read more about callbacks in our [Callback Notification documentation](/developers/api/meeting-agents/callbacks/index.md).



---
[Read in HTML](/developers/api/meeting-agents/provisioning/)