Log inRegister
You are here: System » OEmbedPlugin

OEmbedPlugin

17 March 2026 - 18:28 | Version 1 |
Easy embedding of third party content

oEmbed is a format for enabling an embedded representation of a URL on third party websites. The simple API allows a website to display embedded content (such as photos or videos) when a user posts a link to that resource, without having to parse the resource directly.

All you need to do to embed material from one of the supported providers is add a link to it. The plugin will contact the provider and use the appropriate code to add it to the page, e.g. an iframe for videos and the like.

Supported providers

  1. 23HQ
  2. 3Q
  3. Abraia
  4. Acast
  5. ActBlue
  6. Adilo
  7. AltiumLLC
  8. Altru
  9. Amtraker
  10. Animatron
  11. Animoto
  12. AnnieMusic
  13. ArcGISStoryMaps
  14. Archivos
  15. AssemblrWorld
  16. AudioClip
  17. Audioboom
  18. Audiomack
  19. Audiomeans
  20. Audius
  21. Backtracks
  22. BalsamiqCloud
  23. Beams.fm
  24. Beautiful.AI
  25. Behance
  26. BetaQuellenSuche
  27. Bitchute
  28. Blackfire.io
  29. Blogcast
  30. BlueskySocial
  31. Bookingmood
  32. Bornetube
  33. BoxOfficeBuz
  34. BrioVR
  35. Bumper
  36. Bunny
  37. Buttondown
  38. ByzartProject
  39. CHROCO
  40. Cacoo
  41. Canva
  42. Carbon
  43. CardinalBlue
  44. CatBoat
  45. Celero
  46. Ceros
  47. Chainflix
  48. ChartBlocks
  49. CircuitLab
  50. Clipland
  51. Clyp
  52. CoCoCorp
  53. CodeHS
  54. CodePen
  55. CodeSandbox
  56. Codepoints
  57. CollegeHumor
  58. Commaful
  59. Coub
  60. CrowdRanking
  61. Crumb.sh
  62. CueupDJBooking
  63. Curated
  64. CustomerDB
  65. DALEXNI
  66. DTube
  67. Dailymotion
  68. Datawrapper
  69. DeseretNews
  70. Deviantart.com
  71. Digiteka
  72. DocDroid
  73. Docswell
  74. Dotsub
  75. DreamBroker
  76. EchoesHQ
  77. EgliseInfo
  78. ElevenLabs
  79. Embedery
  80. Ethfiddle
  81. EventLive
  82. Everwall
  83. Ex.Co
  84. Eyrie
  85. FITE
  86. FOXSPORTSAustralia
  87. Facebook
  88. Fader
  89. Fairtube
  90. FaithlifeTV
  91. Figma
  92. Filestage
  93. Firework
  94. Flat
  95. Flickr
  96. Flourish
  97. FlowHubOrg
  98. Fooday
  99. Form-Data
  100. Framatube
  101. FrameBuzz
  102. Framer
  103. GIPHY
  104. GMetri
  105. GOODFORJOB
  106. GTChannel
  107. GW2Fashions
  108. GeographBritainandIreland
  109. GeographChannelIslands
  110. GeographGermany
  111. GettyImages
  112. Gifnote
  113. GloriaTV
  114. Gong
  115. Grain
  116. Gumlet
  117. Gyazo
  118. HASH
  119. Heyzine
  120. HippoVideo
  121. Homey
  122. Hopvue
  123. HuffDuffer
  124. IFTTT
  125. IcosaGallery
  126. Ideamapper
  127. Idomoo
  128. Ignite
  129. Incredible
  130. Indaco
  131. Infogram
  132. Infoveave
  133. Injurymap
  134. Inoreader
  135. InsightTimer
  136. Instagram
  137. InsticatorInc
  138. Issuu
  139. Itabtechinfosys
  140. Jovian
  141. KakaoTv
  142. Kickstarter
  143. Kidoju
  144. Kirim.Email
  145. Kit
  146. Kitchenbowl
  147. Knacki
  148. KnowledgePad
  149. Kooapp
  150. Kubit
  151. Kurozora
  152. LeMans.Pod
  153. LearningApps.org
  154. Lille.Pod
  155. LinePlace
  156. Linkstackz
  157. Livestream
  158. Loom
  159. LottieFiles
  160. Ludus
  161. Lumiere
  162. Matterport
  163. Mediastream
  164. MedienarchivderKünste-ZürcherHochschulederKünste
  165. MermaidInk
  166. MicrosoftStream
  167. Minerva
  168. Miro
  169. MixCloud
  170. Mixpanel
  171. MobyPicture
  172. MusicBoxManiacs
  173. MySQLVisualExplain
  174. NDLA-NorwegianDigitalLearningArena
  175. Namchey
  176. Nasjonalbiblioteket
  177. NaturalAtlas
  178. NaverClip
  179. Nebula
  180. NebulaBeta
  181. NeedleCloud
  182. NoPaste
  183. OZ
  184. Observable
  185. Odds.com.au
  186. Odesli(formerlySonglink)
  187. Odysee
  188. OfficialFM
  189. Omniscope
  190. OmnyStudio
  191. Orbitvu
  192. Origits
  193. Outplayed.tv
  194. Overflow
  195. Padlet
  196. PandaVideo
  197. Pastery
  198. PeerTube.TV
  199. Picturelfy
  200. Piggy
  201. Pikasso
  202. PingVP
  203. Pinpoll
  204. Pinterest
  205. PitchHub
  206. Pixdor
  207. Plusdocs
  208. Podbean
  209. PollDaddy
  210. Portfolium
  211. Present
  212. PreziVideo
  213. QTpi
  214. Quartr
  215. QuellenSuche
  216. Quiz.biz
  217. Quizz.biz
  218. RadioPublic
  219. Raindrop
  220. Reddit
  221. Redlof-Medien
  222. ReleaseWire
  223. Replit
  224. ReverbNation
  225. Roomshare
  226. RoosterTeeth
  227. Rumble
  228. Runkit
  229. SOOP
  230. Saooti
  231. SapoVideos
  232. Satcat
  233. Scenes
  234. Screen9
  235. Screencast.com
  236. Screenr
  237. ScribbleMaps
  238. Scribd
  239. SendtoNews
  240. SharedFile
  241. Shopshare
  242. ShortNote
  243. Shoudio
  244. ShowbyAnimaker
  245. ShowtheWay,actionablelocationinfo
  246. Simplecast
  247. Sizzle
  248. Sketchfab
  249. Skoletube
  250. SlideShare
  251. SmashNotes
  252. Smeme
  253. Smrthi
  254. SmugMug
  255. SocialExplorer
  256. SoundCloud
  257. SpeakerDeck
  258. Spotify
  259. Spotlightr
  260. Spreaker
  261. SproutVideo
  262. Spyke
  263. StanfordDigitalRepository
  264. Streamable
  265. Streamio
  266. Subscribi
  267. Sudomemo
  268. Supercut
  269. Sutori
  270. Sway
  271. SwayOffice
  272. Synthesia
  273. TED
  274. TechPostCast
  275. TheDAMconsultants
  276. TheNewYorkTimes
  277. TheySaidSo
  278. TickCounter
  279. TikTok
  280. TonicAudio
  281. Toornament
  282. Topy
  283. Totango
  284. Trackspace
  285. TrinityAudio
  286. Tumblr
  287. Tuxx
  288. Twinmotion
  289. Twitter
  290. TypeCast
  291. Typlog
  292. UAPod
  293. UnivParis1.Pod
  294. UniversityofCambridgeMap
  295. Upec.Pod
  296. Ustream
  297. VEVO
  298. VLIVE
  299. VeeRVR
  300. VidMount
  301. Videfit
  302. Vidyard
  303. Vimeo
  304. Viostream
  305. Viously
  306. Vizdom
  307. Vizydrop
  308. Vlipsy
  309. Vouch
  310. VoxSnap
  311. Waltrack
  312. Wave.video
  313. Web3isGoingJustGreat
  314. Webcrumbs
  315. Whimsical
  316. Wistia,Inc.
  317. Wokwi
  318. WolframCloud
  319. WordPress.com
  320. X
  321. YUMPU
  322. YouTube
  323. Zeplin
  324. ZingSoft
  325. ZnipeTV
  326. Zoomable
  327. afreecaTV
  328. amChartsLiveEditor
  329. audio.com
  330. biqnetwork
  331. castmake
  332. chirbit.com
  333. dadan
  334. eduMedia
  335. everviz
  336. hearthis.at
  337. helenenglish_education
  338. hihaho
  339. iFixit
  340. iHeartRadio
  341. iMenuPro
  342. inphood
  343. itemisCREATE
  344. kmdr
  345. marimo
  346. me.me
  347. myBeweeg
  348. nanoo.tv
  349. neetoRecord
  350. nfb.ca
  351. rcvis
  352. sbedit
  353. tksn-me
  354. tvcf
  355. uStudio,Inc.
  356. wecandeo
  357. wizer.me

A lot of providers are available via https://embed.ly. However, you'll have to register to get an api-key. Some of the listed providers have already been added to this plugin, yet not all.

Syntax

EMBED

%EMBED{"url" [width="..." height="..."]}% (or %OEMBED{...}%)

  • url: an external link to the resource to be embedded
  • width, height: optional maximum values for the image/video/... being embedded (note: not all providers properly implement these parameters)
  • format: a format string to implement a custom renderer
  • template: the name of a template defined in oembed.tmpl; known templates shipped with OEmbedPlugin are "article" (todo add more)
  • quality (youtube only): specify the thumbnail quality; possible values are hq, mq, sd, default and auto; the latter will find out automatically which best thumbnail is available
  • <custom_key>: any custom key="value" pair may be defined and made use of in the format (or template) using $custom_key to expand it; these have higher precendence than the default values submitted by the oembed provider; for example use a custom thumbnail_width="100" parameter to override the default width.

The keys in the json submitted from the oembed provider can be used in a format string (or a template definition). Some well-known keys are:

  • $author_name
  • $author_url
  • $descriptio
  • $html
  • $provider_name
  • $provider_url
  • $thumbnail_height
  • $thumbnail_url
  • $thumbnail_width
  • $title
  • $type
  • $url
  • $web_page

In addition all standard format tokens can be used ($percnt, $dollar, $nop, etc).

See the oembed.tmpl file on how to use them.

OEMBED_PROVIDER

%OEMBED_PROVIDER{["<id>"]}%

  • id: provider name to display the configuration for
  • format: format string, defaults to    1 [[$provider][$name]
  • header: header string added if there was a provider in the list
  • footer: footer string added if …
  • separator: separator string inserted between each provider found
  • exampleformat: format strings for available examples
  • exampleheader
  • examplefooter
  • exampleseparator
  • include: regular expression that the provider must match to be included in the output
  • exclude: regular expression that the provider must not match to be included in the output

The format string may use the following variables

  • $name: name of provider
  • $examples: example string constructed from example[format,header,footer,separator]
  • $provider: url address of the provider
  • $api: api address for the oembed endpoint
  • $url: list of patterns that an url must match to be processed by this provider

To display all examples stored in the provider records use:

<form action="%SCRIPTURLPATH{"view"}%/%WEB%/%TOPIC%">
*Url*: 
<input type="text" size="80" name="url" value="%URLPARAM{"url"}%" />
<input type="submit" class="foswikiButton" value="Embed" />
</form>

%IF{"$'URLPARAM{url}'!=''"
  then="$percntEMBED{\"%URLPARAM{"url"}%\"}$percnt"
}%

%OEMBED_PROVIDER{
   format="   1 $name: $examples"
   exampleformat="[[%SCRIPTURLPATH{"view"}%/%WEB%/%TOPIC%?url=$url][example]]"
}%

Examples

Youbtube

%EMBED{"https://www.youtube.com/watch?v=O8e8Ttfz-pY" width="600"}%

Soundcloud

%EMBED{"https://soundcloud.com/safia-music/listen-to-soul-listen-to-blues" width="600"}%

Flickr

%EMBED{"https://www.flickr.com/photos/onement/1239189689/"}%
Bardo Pond

Installation Instructions

You do not need to install anything in the browser to use this extension. The following instructions are for the administrator who installs the extension on the server.

Open configure, and open the "Extensions" section. "Extensions Operation and Maintenance" Tab → "Install, Update or Remove extensions" Tab. Click the "Search for Extensions" button. Enter part of the extension name or description and press search. Select the desired extension(s) and click install. If an extension is already installed, it will not show up in the search results.

You can also install from the shell by running the extension installer as the web server user: (Be sure to run as the webserver user, not as root!)
cd /path/to/foswiki
perl tools/extension_installer <NameOfExtension> install

If you have any problems, or if the extension isn't available in configure, then you can still install manually from the command-line. See https://foswiki.org/Support/ManuallyInstallingExtensions for more help.

Dependencies

NameVersionDescription
Moo>=0Required
Regexp::Assemble>=0Required
Foswiki::Contrib::CacheContrib>=3.00Required

Change History

27 Feb 2026 fixed embedding youtube videos
19 Nov 2025 removed local Regexp::Assemble cpan package; added {UseProxy} config setting
23 Oct 2025 removed some spurious provider files; removed some outdated providers; make probing for youtube poster images more efficient
02 Oct 2025 updated oembed providers
30 Apr 2024 fixed use of CacheContrib
30 May 2023 fixed parsing video id from youtube iframes
05 May 2022 added a few more oembed providers
03 Mar 2021 adedd microsoft stream provider
22 Jan 2020 imported provider from https://github.com/iamcal/oembed; implemented %OEMBED_PROVIDER
13 Mar 2019 document quality parameter when embeding youtube videos; added quality="auto" to fetch the best thumbnail available; added support for proxy
25 Sep 2017 added clearCache REST interface for local cache maintenance
17 Nov 2016 more providers; converted Web::oEmbed from Any::Moose to Moo
07 Oct 2015 multiple providers went in & out
16 Mar 2015 added Infogram
23 Feb 2015 added a few more provider
16 Dec 2014 have an image preview for vimeo and youtube and only embed the real video when clicking on it; added Vine
25 Sep 2014 added caching
24 Sep 2014 added a custom renderer for youtube videos
29 Aug 2014 removed my opera, qirk and urtak; use https whereever possible
01 Nov 2013 added more providers
30 Aug 2013 added more providers
24 Jun 2013 added format, template and custom params; added a few more providers
This site is powered by FoswikiCopyright © by the contributing authors. All material on this site is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback