Skip to content
Start here

Create a preset

client.RealtimeKit.Presets.New(ctx, appID, params) (*PresetNewResponse, error)
POST/accounts/{account_id}/realtime/kit/{app_id}/presets

Creates a preset belonging to the current App

Security

API Token

The preferred authorization scheme for interacting with the Cloudflare API. Create a token.

Example:Authorization: Bearer Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY
Accepted Permissions (at least one required)
Realtime AdminRealtime
ParametersExpand Collapse
appID string

The app identifier tag.

maxLength32
params PresetNewParams
AccountID param.Field[string]

Path param: The account identifier tag.

maxLength32
Config param.Field[PresetNewParamsConfig]

Body param

MaxScreenshareCount float64

Maximum number of screen shares that can be active at a given time

MaxVideoStreams PresetNewParamsConfigMaxVideoStreams

Maximum number of streams that are visible on a device

Desktop float64

Maximum number of video streams visible on desktop devices

Mobile float64

Maximum number of streams visible on mobile devices

Media PresetNewParamsConfigMedia

Media configuration options. eg: Video quality

Screenshare PresetNewParamsConfigMediaScreenshare

Configuration options for participant screen shares

FrameRate float64

Frame rate of screen share

Quality PresetNewParamsConfigMediaScreenshareQuality

Quality of screen share

One of the following:
const PresetNewParamsConfigMediaScreenshareQualityHD PresetNewParamsConfigMediaScreenshareQuality = "hd"
const PresetNewParamsConfigMediaScreenshareQualityVga PresetNewParamsConfigMediaScreenshareQuality = "vga"
const PresetNewParamsConfigMediaScreenshareQualityQvga PresetNewParamsConfigMediaScreenshareQuality = "qvga"
const PresetNewParamsConfigMediaScreenshareQualityFhd PresetNewParamsConfigMediaScreenshareQuality = "fhd"
const PresetNewParamsConfigMediaScreenshareQualityUhd PresetNewParamsConfigMediaScreenshareQuality = "uhd"
Video PresetNewParamsConfigMediaVideo

Configuration options for participant videos

FrameRate float64

Frame rate of participants’ video

maximum30
Quality PresetNewParamsConfigMediaVideoQuality

Video quality of participants

One of the following:
const PresetNewParamsConfigMediaVideoQualityHD PresetNewParamsConfigMediaVideoQuality = "hd"
const PresetNewParamsConfigMediaVideoQualityVga PresetNewParamsConfigMediaVideoQuality = "vga"
const PresetNewParamsConfigMediaVideoQualityQvga PresetNewParamsConfigMediaVideoQuality = "qvga"
const PresetNewParamsConfigMediaVideoQualityFhd PresetNewParamsConfigMediaVideoQuality = "fhd"
const PresetNewParamsConfigMediaVideoQualityUhd PresetNewParamsConfigMediaVideoQuality = "uhd"
Simulcast boolOptional

Enable simulcast for participant videos.

Audio PresetNewParamsConfigMediaAudioOptional

Control options for Audio quality.

EnableHighBitrate boolOptional

Enable High Quality Audio for your meetings

EnableStereo boolOptional

Enable Stereo for your meetings

ViewType PresetNewParamsConfigViewType

Type of the meeting

One of the following:
const PresetNewParamsConfigViewTypeGroupCall PresetNewParamsConfigViewType = "GROUP_CALL"
const PresetNewParamsConfigViewTypeWebinar PresetNewParamsConfigViewType = "WEBINAR"
const PresetNewParamsConfigViewTypeAudioRoom PresetNewParamsConfigViewType = "AUDIO_ROOM"
const PresetNewParamsConfigViewTypeLivestream PresetNewParamsConfigViewType = "LIVESTREAM"
LivestreamViewerQualities []int64Optional

Livestream viewer quality levels.

Name param.Field[string]

Body param: Name of the preset

Permissions param.Field[PresetNewParamsPermissions]

Body param

AcceptWaitingRequests bool

Whether this participant can accept waiting requests

CanAcceptProductionRequests bool
CanChangeParticipantPermissions bool
CanEditDisplayName bool
CanLivestream bool
CanRecord bool
CanSpotlight bool
Chat PresetNewParamsPermissionsChat
Private PresetNewParamsPermissionsChatPrivate
CanReceive bool
CanSend bool
Files bool
Text bool
Public PresetNewParamsPermissionsChatPublic
CanSend bool

Can send messages in general

Files bool

Can send file messages

Text bool

Can send text messages

ConnectedMeetings PresetNewParamsPermissionsConnectedMeetings
CanAlterConnectedMeetings bool
CanSwitchConnectedMeetings bool
CanSwitchToParentMeeting bool
DisableParticipantAudio bool
DisableParticipantScreensharing bool
DisableParticipantVideo bool
HiddenParticipant bool

Whether this participant is visible to others or not

KickParticipant bool
Media PresetNewParamsPermissionsMedia

Media permissions

Audio PresetNewParamsPermissionsMediaAudio

Audio permissions

CanProduce PresetNewParamsPermissionsMediaAudioCanProduce

Can produce audio

One of the following:
const PresetNewParamsPermissionsMediaAudioCanProduceAllowed PresetNewParamsPermissionsMediaAudioCanProduce = "ALLOWED"
const PresetNewParamsPermissionsMediaAudioCanProduceNotAllowed PresetNewParamsPermissionsMediaAudioCanProduce = "NOT_ALLOWED"
const PresetNewParamsPermissionsMediaAudioCanProduceCanRequest PresetNewParamsPermissionsMediaAudioCanProduce = "CAN_REQUEST"
Screenshare PresetNewParamsPermissionsMediaScreenshare

Screenshare permissions

CanProduce PresetNewParamsPermissionsMediaScreenshareCanProduce

Can produce screen share video

One of the following:
const PresetNewParamsPermissionsMediaScreenshareCanProduceAllowed PresetNewParamsPermissionsMediaScreenshareCanProduce = "ALLOWED"
const PresetNewParamsPermissionsMediaScreenshareCanProduceNotAllowed PresetNewParamsPermissionsMediaScreenshareCanProduce = "NOT_ALLOWED"
const PresetNewParamsPermissionsMediaScreenshareCanProduceCanRequest PresetNewParamsPermissionsMediaScreenshareCanProduce = "CAN_REQUEST"
Video PresetNewParamsPermissionsMediaVideo

Video permissions

CanProduce PresetNewParamsPermissionsMediaVideoCanProduce

Can produce video

One of the following:
const PresetNewParamsPermissionsMediaVideoCanProduceAllowed PresetNewParamsPermissionsMediaVideoCanProduce = "ALLOWED"
const PresetNewParamsPermissionsMediaVideoCanProduceNotAllowed PresetNewParamsPermissionsMediaVideoCanProduce = "NOT_ALLOWED"
const PresetNewParamsPermissionsMediaVideoCanProduceCanRequest PresetNewParamsPermissionsMediaVideoCanProduce = "CAN_REQUEST"
PinParticipant bool
Plugins PresetNewParamsPermissionsPlugins

Plugin permissions

CanClose bool

Can close plugins that are already open

CanEditConfig bool

Can edit plugin config

CanStart bool

Can start plugins

Config map[string, PresetNewParamsPermissionsPluginsConfig]

Plugin configuration keyed by plugin UUID.

AccessControl PresetNewParamsPermissionsPluginsConfigAccessControlOptional
One of the following:
const PresetNewParamsPermissionsPluginsConfigAccessControlFullAccess PresetNewParamsPermissionsPluginsConfigAccessControl = "FULL_ACCESS"
const PresetNewParamsPermissionsPluginsConfigAccessControlViewOnly PresetNewParamsPermissionsPluginsConfigAccessControl = "VIEW_ONLY"
HandlesViewOnly boolOptional
Polls PresetNewParamsPermissionsPolls

Poll permissions

CanCreate bool

Can create polls

CanView bool

Can view polls

CanVote bool

Can vote on polls

RecorderType PresetNewParamsPermissionsRecorderType

Type of the recording peer

One of the following:
const PresetNewParamsPermissionsRecorderTypeRecorder PresetNewParamsPermissionsRecorderType = "RECORDER"
const PresetNewParamsPermissionsRecorderTypeLivestreamer PresetNewParamsPermissionsRecorderType = "LIVESTREAMER"
const PresetNewParamsPermissionsRecorderTypeNone PresetNewParamsPermissionsRecorderType = "NONE"
ShowParticipantList bool
WaitingRoomType PresetNewParamsPermissionsWaitingRoomType

Waiting room type

One of the following:
const PresetNewParamsPermissionsWaitingRoomTypeSkip PresetNewParamsPermissionsWaitingRoomType = "SKIP"
const PresetNewParamsPermissionsWaitingRoomTypeOnPrivilegedUserEntry PresetNewParamsPermissionsWaitingRoomType = "ON_PRIVILEGED_USER_ENTRY"
const PresetNewParamsPermissionsWaitingRoomTypeSkipOnAccept PresetNewParamsPermissionsWaitingRoomType = "SKIP_ON_ACCEPT"
AcceptStageRequests boolOptional
IsRecorder boolOptional
StageAccess PresetNewParamsPermissionsStageAccessOptional
One of the following:
const PresetNewParamsPermissionsStageAccessAllowed PresetNewParamsPermissionsStageAccess = "ALLOWED"
const PresetNewParamsPermissionsStageAccessNotAllowed PresetNewParamsPermissionsStageAccess = "NOT_ALLOWED"
const PresetNewParamsPermissionsStageAccessCanRequest PresetNewParamsPermissionsStageAccess = "CAN_REQUEST"
StageEnabled boolOptional
TranscriptionEnabled boolOptional
UI param.Field[PresetNewParamsUI]

Body param

DesignTokens PresetNewParamsUIDesignTokens
BorderRadius PresetNewParamsUIDesignTokensBorderRadius
One of the following:
const PresetNewParamsUIDesignTokensBorderRadiusSharp PresetNewParamsUIDesignTokensBorderRadius = "sharp"
const PresetNewParamsUIDesignTokensBorderRadiusRounded PresetNewParamsUIDesignTokensBorderRadius = "rounded"
const PresetNewParamsUIDesignTokensBorderRadiusExtraRounded PresetNewParamsUIDesignTokensBorderRadius = "extra-rounded"
const PresetNewParamsUIDesignTokensBorderRadiusCircular PresetNewParamsUIDesignTokensBorderRadius = "circular"
BorderWidth PresetNewParamsUIDesignTokensBorderWidth
One of the following:
const PresetNewParamsUIDesignTokensBorderWidthNone PresetNewParamsUIDesignTokensBorderWidth = "none"
const PresetNewParamsUIDesignTokensBorderWidthThin PresetNewParamsUIDesignTokensBorderWidth = "thin"
const PresetNewParamsUIDesignTokensBorderWidthFat PresetNewParamsUIDesignTokensBorderWidth = "fat"
Colors PresetNewParamsUIDesignTokensColors
Background PresetNewParamsUIDesignTokensColorsBackground
Number1000 string
Number600 string
Number700 string
Number800 string
Number900 string
Brand PresetNewParamsUIDesignTokensColorsBrand
Number300 string
Number400 string
Number500 string
Number600 string
Number700 string
Danger string
Success string
Text string
TextOnBrand string
VideoBg string
Warning string
SpacingBase float64
Theme PresetNewParamsUIDesignTokensTheme
One of the following:
const PresetNewParamsUIDesignTokensThemeDarkest PresetNewParamsUIDesignTokensTheme = "darkest"
const PresetNewParamsUIDesignTokensThemeDark PresetNewParamsUIDesignTokensTheme = "dark"
const PresetNewParamsUIDesignTokensThemeLight PresetNewParamsUIDesignTokensTheme = "light"
FontFamily stringOptional
GoogleFont stringOptional
ReturnsExpand Collapse
type PresetNewResponse struct{…}
Data PresetNewResponseData

Data returned by the operation

ID string

ID of the preset

formatuuid
Config PresetNewResponseDataConfig
MaxScreenshareCount float64

Maximum number of screen shares that can be active at a given time

MaxVideoStreams PresetNewResponseDataConfigMaxVideoStreams

Maximum number of streams that are visible on a device

Desktop float64

Maximum number of video streams visible on desktop devices

Mobile float64

Maximum number of streams visible on mobile devices

Media PresetNewResponseDataConfigMedia

Media configuration options. eg: Video quality

Screenshare PresetNewResponseDataConfigMediaScreenshare

Configuration options for participant screen shares

FrameRate float64

Frame rate of screen share

Quality PresetNewResponseDataConfigMediaScreenshareQuality

Quality of screen share

One of the following:
const PresetNewResponseDataConfigMediaScreenshareQualityHD PresetNewResponseDataConfigMediaScreenshareQuality = "hd"
const PresetNewResponseDataConfigMediaScreenshareQualityVga PresetNewResponseDataConfigMediaScreenshareQuality = "vga"
const PresetNewResponseDataConfigMediaScreenshareQualityQvga PresetNewResponseDataConfigMediaScreenshareQuality = "qvga"
const PresetNewResponseDataConfigMediaScreenshareQualityFhd PresetNewResponseDataConfigMediaScreenshareQuality = "fhd"
const PresetNewResponseDataConfigMediaScreenshareQualityUhd PresetNewResponseDataConfigMediaScreenshareQuality = "uhd"
Video PresetNewResponseDataConfigMediaVideo

Configuration options for participant videos

FrameRate float64

Frame rate of participants’ video

maximum30
Quality PresetNewResponseDataConfigMediaVideoQuality

Video quality of participants

One of the following:
const PresetNewResponseDataConfigMediaVideoQualityHD PresetNewResponseDataConfigMediaVideoQuality = "hd"
const PresetNewResponseDataConfigMediaVideoQualityVga PresetNewResponseDataConfigMediaVideoQuality = "vga"
const PresetNewResponseDataConfigMediaVideoQualityQvga PresetNewResponseDataConfigMediaVideoQuality = "qvga"
const PresetNewResponseDataConfigMediaVideoQualityFhd PresetNewResponseDataConfigMediaVideoQuality = "fhd"
const PresetNewResponseDataConfigMediaVideoQualityUhd PresetNewResponseDataConfigMediaVideoQuality = "uhd"
Simulcast boolOptional

Enable simulcast for participant videos.

Audio PresetNewResponseDataConfigMediaAudioOptional

Control options for Audio quality.

EnableHighBitrate boolOptional

Enable High Quality Audio for your meetings

EnableStereo boolOptional

Enable Stereo for your meetings

ViewType PresetNewResponseDataConfigViewType

Type of the meeting

One of the following:
const PresetNewResponseDataConfigViewTypeGroupCall PresetNewResponseDataConfigViewType = "GROUP_CALL"
const PresetNewResponseDataConfigViewTypeWebinar PresetNewResponseDataConfigViewType = "WEBINAR"
const PresetNewResponseDataConfigViewTypeAudioRoom PresetNewResponseDataConfigViewType = "AUDIO_ROOM"
const PresetNewResponseDataConfigViewTypeLivestream PresetNewResponseDataConfigViewType = "LIVESTREAM"
LivestreamViewerQualities []int64Optional

Livestream viewer quality levels.

CreatedAt Time

Timestamp this preset was created at

formatdate-time
Name string

Name of the preset

Permissions PresetNewResponseDataPermissions
AcceptWaitingRequests bool

Whether this participant can accept waiting requests

CanAcceptProductionRequests bool
CanChangeParticipantPermissions bool
CanEditDisplayName bool
CanLivestream bool
CanRecord bool
CanSpotlight bool
Chat PresetNewResponseDataPermissionsChat
Private PresetNewResponseDataPermissionsChatPrivate
CanReceive bool
CanSend bool
Files bool
Text bool
Public PresetNewResponseDataPermissionsChatPublic
CanSend bool

Can send messages in general

Files bool

Can send file messages

Text bool

Can send text messages

ConnectedMeetings PresetNewResponseDataPermissionsConnectedMeetings
CanAlterConnectedMeetings bool
CanSwitchConnectedMeetings bool
CanSwitchToParentMeeting bool
DisableParticipantAudio bool
DisableParticipantScreensharing bool
DisableParticipantVideo bool
HiddenParticipant bool

Whether this participant is visible to others or not

KickParticipant bool
Media PresetNewResponseDataPermissionsMedia

Media permissions

Audio PresetNewResponseDataPermissionsMediaAudio

Audio permissions

CanProduce PresetNewResponseDataPermissionsMediaAudioCanProduce

Can produce audio

One of the following:
const PresetNewResponseDataPermissionsMediaAudioCanProduceAllowed PresetNewResponseDataPermissionsMediaAudioCanProduce = "ALLOWED"
const PresetNewResponseDataPermissionsMediaAudioCanProduceNotAllowed PresetNewResponseDataPermissionsMediaAudioCanProduce = "NOT_ALLOWED"
const PresetNewResponseDataPermissionsMediaAudioCanProduceCanRequest PresetNewResponseDataPermissionsMediaAudioCanProduce = "CAN_REQUEST"
Screenshare PresetNewResponseDataPermissionsMediaScreenshare

Screenshare permissions

CanProduce PresetNewResponseDataPermissionsMediaScreenshareCanProduce

Can produce screen share video

One of the following:
const PresetNewResponseDataPermissionsMediaScreenshareCanProduceAllowed PresetNewResponseDataPermissionsMediaScreenshareCanProduce = "ALLOWED"
const PresetNewResponseDataPermissionsMediaScreenshareCanProduceNotAllowed PresetNewResponseDataPermissionsMediaScreenshareCanProduce = "NOT_ALLOWED"
const PresetNewResponseDataPermissionsMediaScreenshareCanProduceCanRequest PresetNewResponseDataPermissionsMediaScreenshareCanProduce = "CAN_REQUEST"
Video PresetNewResponseDataPermissionsMediaVideo

Video permissions

CanProduce PresetNewResponseDataPermissionsMediaVideoCanProduce

Can produce video

One of the following:
const PresetNewResponseDataPermissionsMediaVideoCanProduceAllowed PresetNewResponseDataPermissionsMediaVideoCanProduce = "ALLOWED"
const PresetNewResponseDataPermissionsMediaVideoCanProduceNotAllowed PresetNewResponseDataPermissionsMediaVideoCanProduce = "NOT_ALLOWED"
const PresetNewResponseDataPermissionsMediaVideoCanProduceCanRequest PresetNewResponseDataPermissionsMediaVideoCanProduce = "CAN_REQUEST"
PinParticipant bool
Plugins PresetNewResponseDataPermissionsPlugins

Plugin permissions

CanClose bool

Can close plugins that are already open

CanEditConfig bool

Can edit plugin config

CanStart bool

Can start plugins

Config map[string, PresetNewResponseDataPermissionsPluginsConfig]

Plugin configuration keyed by plugin UUID.

AccessControl PresetNewResponseDataPermissionsPluginsConfigAccessControlOptional
One of the following:
const PresetNewResponseDataPermissionsPluginsConfigAccessControlFullAccess PresetNewResponseDataPermissionsPluginsConfigAccessControl = "FULL_ACCESS"
const PresetNewResponseDataPermissionsPluginsConfigAccessControlViewOnly PresetNewResponseDataPermissionsPluginsConfigAccessControl = "VIEW_ONLY"
HandlesViewOnly boolOptional
Polls PresetNewResponseDataPermissionsPolls

Poll permissions

CanCreate bool

Can create polls

CanView bool

Can view polls

CanVote bool

Can vote on polls

RecorderType PresetNewResponseDataPermissionsRecorderType

Type of the recording peer

One of the following:
const PresetNewResponseDataPermissionsRecorderTypeRecorder PresetNewResponseDataPermissionsRecorderType = "RECORDER"
const PresetNewResponseDataPermissionsRecorderTypeLivestreamer PresetNewResponseDataPermissionsRecorderType = "LIVESTREAMER"
const PresetNewResponseDataPermissionsRecorderTypeNone PresetNewResponseDataPermissionsRecorderType = "NONE"
ShowParticipantList bool
WaitingRoomType PresetNewResponseDataPermissionsWaitingRoomType

Waiting room type

One of the following:
const PresetNewResponseDataPermissionsWaitingRoomTypeSkip PresetNewResponseDataPermissionsWaitingRoomType = "SKIP"
const PresetNewResponseDataPermissionsWaitingRoomTypeOnPrivilegedUserEntry PresetNewResponseDataPermissionsWaitingRoomType = "ON_PRIVILEGED_USER_ENTRY"
const PresetNewResponseDataPermissionsWaitingRoomTypeSkipOnAccept PresetNewResponseDataPermissionsWaitingRoomType = "SKIP_ON_ACCEPT"
AcceptStageRequests boolOptional
IsRecorder boolOptional
StageAccess PresetNewResponseDataPermissionsStageAccessOptional
One of the following:
const PresetNewResponseDataPermissionsStageAccessAllowed PresetNewResponseDataPermissionsStageAccess = "ALLOWED"
const PresetNewResponseDataPermissionsStageAccessNotAllowed PresetNewResponseDataPermissionsStageAccess = "NOT_ALLOWED"
const PresetNewResponseDataPermissionsStageAccessCanRequest PresetNewResponseDataPermissionsStageAccess = "CAN_REQUEST"
StageEnabled boolOptional
TranscriptionEnabled boolOptional
UI PresetNewResponseDataUI
DesignTokens PresetNewResponseDataUIDesignTokens
BorderRadius PresetNewResponseDataUIDesignTokensBorderRadius
One of the following:
const PresetNewResponseDataUIDesignTokensBorderRadiusSharp PresetNewResponseDataUIDesignTokensBorderRadius = "sharp"
const PresetNewResponseDataUIDesignTokensBorderRadiusRounded PresetNewResponseDataUIDesignTokensBorderRadius = "rounded"
const PresetNewResponseDataUIDesignTokensBorderRadiusExtraRounded PresetNewResponseDataUIDesignTokensBorderRadius = "extra-rounded"
const PresetNewResponseDataUIDesignTokensBorderRadiusCircular PresetNewResponseDataUIDesignTokensBorderRadius = "circular"
BorderWidth PresetNewResponseDataUIDesignTokensBorderWidth
One of the following:
const PresetNewResponseDataUIDesignTokensBorderWidthNone PresetNewResponseDataUIDesignTokensBorderWidth = "none"
const PresetNewResponseDataUIDesignTokensBorderWidthThin PresetNewResponseDataUIDesignTokensBorderWidth = "thin"
const PresetNewResponseDataUIDesignTokensBorderWidthFat PresetNewResponseDataUIDesignTokensBorderWidth = "fat"
Colors PresetNewResponseDataUIDesignTokensColors
Background PresetNewResponseDataUIDesignTokensColorsBackground
Number1000 string
Number600 string
Number700 string
Number800 string
Number900 string
Brand PresetNewResponseDataUIDesignTokensColorsBrand
Number300 string
Number400 string
Number500 string
Number600 string
Number700 string
Danger string
Success string
Text string
TextOnBrand string
VideoBg string
Warning string
SpacingBase float64
Theme PresetNewResponseDataUIDesignTokensTheme
One of the following:
const PresetNewResponseDataUIDesignTokensThemeDarkest PresetNewResponseDataUIDesignTokensTheme = "darkest"
const PresetNewResponseDataUIDesignTokensThemeDark PresetNewResponseDataUIDesignTokensTheme = "dark"
const PresetNewResponseDataUIDesignTokensThemeLight PresetNewResponseDataUIDesignTokensTheme = "light"
FontFamily stringOptional
GoogleFont stringOptional
UpdatedAt Time

Timestamp this preset was last updated

formatdate-time
Success bool

Success status of the operation

Create a preset

package main

import (
  "context"
  "fmt"

  "github.com/stainless-sdks/cloudflare-go"
  "github.com/stainless-sdks/cloudflare-go/option"
  "github.com/stainless-sdks/cloudflare-go/realtime_kit"
)

func main() {
  client := cloudflare.NewClient(
    option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
  )
  preset, err := client.RealtimeKit.Presets.New(
    context.TODO(),
    "app_id",
    realtime_kit.PresetNewParams{
      AccountID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"),
      Config: cloudflare.F(realtime_kit.PresetNewParamsConfig{
        MaxScreenshareCount: cloudflare.F(0.000000),
        MaxVideoStreams: cloudflare.F(realtime_kit.PresetNewParamsConfigMaxVideoStreams{
          Desktop: cloudflare.F(0.000000),
          Mobile: cloudflare.F(0.000000),
        }),
        Media: cloudflare.F(realtime_kit.PresetNewParamsConfigMedia{
          Screenshare: cloudflare.F(realtime_kit.PresetNewParamsConfigMediaScreenshare{
            FrameRate: cloudflare.F(0.000000),
            Quality: cloudflare.F(realtime_kit.PresetNewParamsConfigMediaScreenshareQualityHD),
          }),
          Video: cloudflare.F(realtime_kit.PresetNewParamsConfigMediaVideo{
            FrameRate: cloudflare.F(30.000000),
            Quality: cloudflare.F(realtime_kit.PresetNewParamsConfigMediaVideoQualityHD),
          }),
        }),
        ViewType: cloudflare.F(realtime_kit.PresetNewParamsConfigViewTypeGroupCall),
      }),
      Name: cloudflare.F("name"),
      Permissions: cloudflare.F(realtime_kit.PresetNewParamsPermissions{
        AcceptWaitingRequests: cloudflare.F(true),
        CanAcceptProductionRequests: cloudflare.F(true),
        CanChangeParticipantPermissions: cloudflare.F(true),
        CanEditDisplayName: cloudflare.F(true),
        CanLivestream: cloudflare.F(true),
        CanRecord: cloudflare.F(true),
        CanSpotlight: cloudflare.F(true),
        Chat: cloudflare.F(realtime_kit.PresetNewParamsPermissionsChat{
          Private: cloudflare.F(realtime_kit.PresetNewParamsPermissionsChatPrivate{
            CanReceive: cloudflare.F(true),
            CanSend: cloudflare.F(true),
            Files: cloudflare.F(true),
            Text: cloudflare.F(true),
          }),
          Public: cloudflare.F(realtime_kit.PresetNewParamsPermissionsChatPublic{
            CanSend: cloudflare.F(true),
            Files: cloudflare.F(true),
            Text: cloudflare.F(true),
          }),
        }),
        ConnectedMeetings: cloudflare.F(realtime_kit.PresetNewParamsPermissionsConnectedMeetings{
          CanAlterConnectedMeetings: cloudflare.F(true),
          CanSwitchConnectedMeetings: cloudflare.F(true),
          CanSwitchToParentMeeting: cloudflare.F(true),
        }),
        DisableParticipantAudio: cloudflare.F(true),
        DisableParticipantScreensharing: cloudflare.F(true),
        DisableParticipantVideo: cloudflare.F(true),
        HiddenParticipant: cloudflare.F(true),
        KickParticipant: cloudflare.F(true),
        Media: cloudflare.F(realtime_kit.PresetNewParamsPermissionsMedia{
          Audio: cloudflare.F(realtime_kit.PresetNewParamsPermissionsMediaAudio{
            CanProduce: cloudflare.F(realtime_kit.PresetNewParamsPermissionsMediaAudioCanProduceAllowed),
          }),
          Screenshare: cloudflare.F(realtime_kit.PresetNewParamsPermissionsMediaScreenshare{
            CanProduce: cloudflare.F(realtime_kit.PresetNewParamsPermissionsMediaScreenshareCanProduceAllowed),
          }),
          Video: cloudflare.F(realtime_kit.PresetNewParamsPermissionsMediaVideo{
            CanProduce: cloudflare.F(realtime_kit.PresetNewParamsPermissionsMediaVideoCanProduceAllowed),
          }),
        }),
        PinParticipant: cloudflare.F(true),
        Plugins: cloudflare.F(realtime_kit.PresetNewParamsPermissionsPlugins{
          CanClose: cloudflare.F(true),
          CanEditConfig: cloudflare.F(true),
          CanStart: cloudflare.F(true),
          Config: cloudflare.F(map[string]realtime_kit.PresetNewParamsPermissionsPluginsConfig{
          "foo": realtime_kit.PresetNewParamsPermissionsPluginsConfig{

          },
          }),
        }),
        Polls: cloudflare.F(realtime_kit.PresetNewParamsPermissionsPolls{
          CanCreate: cloudflare.F(true),
          CanView: cloudflare.F(true),
          CanVote: cloudflare.F(true),
        }),
        RecorderType: cloudflare.F(realtime_kit.PresetNewParamsPermissionsRecorderTypeRecorder),
        ShowParticipantList: cloudflare.F(true),
        WaitingRoomType: cloudflare.F(realtime_kit.PresetNewParamsPermissionsWaitingRoomTypeSkip),
      }),
      UI: cloudflare.F(realtime_kit.PresetNewParamsUI{
        DesignTokens: cloudflare.F(realtime_kit.PresetNewParamsUIDesignTokens{
          BorderRadius: cloudflare.F(realtime_kit.PresetNewParamsUIDesignTokensBorderRadiusSharp),
          BorderWidth: cloudflare.F(realtime_kit.PresetNewParamsUIDesignTokensBorderWidthNone),
          Colors: cloudflare.F(realtime_kit.PresetNewParamsUIDesignTokensColors{
            Background: cloudflare.F(realtime_kit.PresetNewParamsUIDesignTokensColorsBackground{
              Number600: cloudflare.F("600"),
              Number700: cloudflare.F("700"),
              Number800: cloudflare.F("800"),
              Number900: cloudflare.F("900"),
              Number1000: cloudflare.F("1000"),
            }),
            Brand: cloudflare.F(realtime_kit.PresetNewParamsUIDesignTokensColorsBrand{
              Number300: cloudflare.F("300"),
              Number400: cloudflare.F("400"),
              Number500: cloudflare.F("500"),
              Number600: cloudflare.F("600"),
              Number700: cloudflare.F("700"),
            }),
            Danger: cloudflare.F("danger"),
            Success: cloudflare.F("success"),
            Text: cloudflare.F("text"),
            TextOnBrand: cloudflare.F("text_on_brand"),
            VideoBg: cloudflare.F("video_bg"),
            Warning: cloudflare.F("warning"),
          }),
          SpacingBase: cloudflare.F(0.000000),
          Theme: cloudflare.F(realtime_kit.PresetNewParamsUIDesignTokensThemeDarkest),
        }),
      }),
    },
  )
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", preset.Data)
}
{
  "data": {
    "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "config": {
      "max_screenshare_count": 0,
      "max_video_streams": {
        "desktop": 0,
        "mobile": 0
      },
      "media": {
        "screenshare": {
          "frame_rate": 0,
          "quality": "hd"
        },
        "video": {
          "frame_rate": 30,
          "quality": "hd",
          "simulcast": true
        },
        "audio": {
          "enable_high_bitrate": true,
          "enable_stereo": true
        }
      },
      "view_type": "GROUP_CALL",
      "livestream_viewer_qualities": [
        0
      ]
    },
    "created_at": "2019-12-27T18:11:19.117Z",
    "name": "name",
    "permissions": {
      "accept_waiting_requests": true,
      "can_accept_production_requests": true,
      "can_change_participant_permissions": true,
      "can_edit_display_name": true,
      "can_livestream": true,
      "can_record": true,
      "can_spotlight": true,
      "chat": {
        "private": {
          "can_receive": true,
          "can_send": true,
          "files": true,
          "text": true
        },
        "public": {
          "can_send": true,
          "files": true,
          "text": true
        }
      },
      "connected_meetings": {
        "can_alter_connected_meetings": true,
        "can_switch_connected_meetings": true,
        "can_switch_to_parent_meeting": true
      },
      "disable_participant_audio": true,
      "disable_participant_screensharing": true,
      "disable_participant_video": true,
      "hidden_participant": true,
      "kick_participant": true,
      "media": {
        "audio": {
          "can_produce": "ALLOWED"
        },
        "screenshare": {
          "can_produce": "ALLOWED"
        },
        "video": {
          "can_produce": "ALLOWED"
        }
      },
      "pin_participant": true,
      "plugins": {
        "can_close": true,
        "can_edit_config": true,
        "can_start": true,
        "config": {
          "foo": {
            "access_control": "FULL_ACCESS",
            "handles_view_only": true
          }
        }
      },
      "polls": {
        "can_create": true,
        "can_view": true,
        "can_vote": true
      },
      "recorder_type": "RECORDER",
      "show_participant_list": true,
      "waiting_room_type": "SKIP",
      "accept_stage_requests": true,
      "is_recorder": true,
      "stage_access": "ALLOWED",
      "stage_enabled": true,
      "transcription_enabled": true
    },
    "ui": {
      "design_tokens": {
        "border_radius": "sharp",
        "border_width": "none",
        "colors": {
          "background": {
            "600": "600",
            "700": "700",
            "800": "800",
            "900": "900",
            "1000": "1000"
          },
          "brand": {
            "300": "300",
            "400": "400",
            "500": "500",
            "600": "600",
            "700": "700"
          },
          "danger": "danger",
          "success": "success",
          "text": "text",
          "text_on_brand": "text_on_brand",
          "video_bg": "video_bg",
          "warning": "warning"
        },
        "spacing_base": 0,
        "theme": "darkest",
        "font_family": "font_family",
        "google_font": "google_font",
        "logo": "https://example.com"
      }
    },
    "updated_at": "2019-12-27T18:11:19.117Z"
  },
  "success": true
}
Returns Examples
{
  "data": {
    "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "config": {
      "max_screenshare_count": 0,
      "max_video_streams": {
        "desktop": 0,
        "mobile": 0
      },
      "media": {
        "screenshare": {
          "frame_rate": 0,
          "quality": "hd"
        },
        "video": {
          "frame_rate": 30,
          "quality": "hd",
          "simulcast": true
        },
        "audio": {
          "enable_high_bitrate": true,
          "enable_stereo": true
        }
      },
      "view_type": "GROUP_CALL",
      "livestream_viewer_qualities": [
        0
      ]
    },
    "created_at": "2019-12-27T18:11:19.117Z",
    "name": "name",
    "permissions": {
      "accept_waiting_requests": true,
      "can_accept_production_requests": true,
      "can_change_participant_permissions": true,
      "can_edit_display_name": true,
      "can_livestream": true,
      "can_record": true,
      "can_spotlight": true,
      "chat": {
        "private": {
          "can_receive": true,
          "can_send": true,
          "files": true,
          "text": true
        },
        "public": {
          "can_send": true,
          "files": true,
          "text": true
        }
      },
      "connected_meetings": {
        "can_alter_connected_meetings": true,
        "can_switch_connected_meetings": true,
        "can_switch_to_parent_meeting": true
      },
      "disable_participant_audio": true,
      "disable_participant_screensharing": true,
      "disable_participant_video": true,
      "hidden_participant": true,
      "kick_participant": true,
      "media": {
        "audio": {
          "can_produce": "ALLOWED"
        },
        "screenshare": {
          "can_produce": "ALLOWED"
        },
        "video": {
          "can_produce": "ALLOWED"
        }
      },
      "pin_participant": true,
      "plugins": {
        "can_close": true,
        "can_edit_config": true,
        "can_start": true,
        "config": {
          "foo": {
            "access_control": "FULL_ACCESS",
            "handles_view_only": true
          }
        }
      },
      "polls": {
        "can_create": true,
        "can_view": true,
        "can_vote": true
      },
      "recorder_type": "RECORDER",
      "show_participant_list": true,
      "waiting_room_type": "SKIP",
      "accept_stage_requests": true,
      "is_recorder": true,
      "stage_access": "ALLOWED",
      "stage_enabled": true,
      "transcription_enabled": true
    },
    "ui": {
      "design_tokens": {
        "border_radius": "sharp",
        "border_width": "none",
        "colors": {
          "background": {
            "600": "600",
            "700": "700",
            "800": "800",
            "900": "900",
            "1000": "1000"
          },
          "brand": {
            "300": "300",
            "400": "400",
            "500": "500",
            "600": "600",
            "700": "700"
          },
          "danger": "danger",
          "success": "success",
          "text": "text",
          "text_on_brand": "text_on_brand",
          "video_bg": "video_bg",
          "warning": "warning"
        },
        "spacing_base": 0,
        "theme": "darkest",
        "font_family": "font_family",
        "google_font": "google_font",
        "logo": "https://example.com"
      }
    },
    "updated_at": "2019-12-27T18:11:19.117Z"
  },
  "success": true
}