{"id":38488,"date":"2025-10-15T08:00:00","date_gmt":"2025-10-15T06:00:00","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/?p=38488"},"modified":"2025-12-23T20:00:36","modified_gmt":"2025-12-23T19:00:36","slug":"using-oracle-api-for-mongodb-on-oci","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/using-oracle-api-for-mongodb-on-oci\/","title":{"rendered":"Using Oracle API for MongoDB on OCI"},"content":{"rendered":"\n<p>If you&#8217;ve ever had to deal with <strong>MongoDB<\/strong> after years (or even decades) of working with <strong>SQL<\/strong>, you&#8217;ve probably realized that querying JSON documents can sometimes be painful, to say the least.<\/p>\n\n\n\n<p>In response to this, <strong>Oracle<\/strong> (and others) use a not-so-native adaptation of SQL to query JSON documents. And if you&#8217;ve ever had to deal with these SQL-based JSON queries, you may have found yourself thinking (in hindsight) that querying JSON documents with <strong>MQL (MongoDB Query Language)<\/strong> wasn&#8217;t <em>that<\/em> painful after all. And rightly so : JSON documents are very different from relational tables, and there is <strong>no easy way to continue using SQL without learning <\/strong>some new syntax.<\/p>\n\n\n\n<p>Oracle likely came to the same conclusion, and offers an <strong>API dedicated to MongoDB<\/strong> natives. The idea is simple : to ease the work of developers and database administrators when deciding to migrate from MongoDB to Oracle (and the other way around ?&#8230;)<\/p>\n\n\n\n<p>On <strong>Oracle Cloud Infrastructure (OCI)<\/strong>, this means being able to connect to <strong>Autonomous Databases (ADB)<\/strong>. As a reminder, you have two of them included in the <strong>Always Free Tier<\/strong> of OCI, so you can play around with this feature for free before deciding to migrate to the cloud.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-setting-up-the-oracle-mongodb-api-on-oci\">Setting up the Oracle MongoDB API on OCI<\/h2>\n\n\n\n<p>When creating an Autonomous Database, you can decide on multiple workloads types, including a <strong>JSON workload<\/strong>. However, the MongoDB API does not strictly require the JSON workload type to work.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"903\" height=\"173\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/image-7.png\" alt=\"\" class=\"wp-image-38493\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/image-7.png 903w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/image-7-300x57.png 300w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/image-7-768x147.png 768w\" sizes=\"auto, (max-width: 903px) 100vw, 903px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>However, the <strong>network access setting<\/strong> of your Autonomous Database <strong>must be non-default<\/strong> with one of the following options enabled :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><em>Secure access from allowed IPs and VCNs only<\/em><\/li>\n\n\n\n<li><em>Private endpoint access only<\/em><\/li>\n<\/ul>\n\n\n\n<p>For instance, when using the <strong><em>Secure access from allowed IPs and VCNs only<\/em><\/strong> option, you can add any IP address to the <strong>Access Control List (ACL)<\/strong>, including your own.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"876\" height=\"496\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/20250915_oracle_api_mongodb_01_network_access_full.png\" alt=\"\" class=\"wp-image-38517\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/20250915_oracle_api_mongodb_01_network_access_full.png 876w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/20250915_oracle_api_mongodb_01_network_access_full-300x170.png 300w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/20250915_oracle_api_mongodb_01_network_access_full-768x435.png 768w\" sizes=\"auto, (max-width: 876px) 100vw, 876px\" \/><figcaption class=\"wp-element-caption\"><em><strong>Warning<\/strong> : If your IP address changes, you will have to update the ACL !<\/em><\/figcaption><\/figure>\n\n\n\n<p>After creating the ADB (Autonomous Database), you can check in the <em><strong>Tool configuration<\/strong><\/em> tab the MongoDB API is enabled (it should be, by default).<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"830\" height=\"182\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/20250915_oracle_api_mongodb_01_tool_configuration_tab.png\" alt=\"\" class=\"wp-image-38514\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/20250915_oracle_api_mongodb_01_tool_configuration_tab.png 830w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/20250915_oracle_api_mongodb_01_tool_configuration_tab-300x66.png 300w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/20250915_oracle_api_mongodb_01_tool_configuration_tab-768x168.png 768w\" sizes=\"auto, (max-width: 830px) 100vw, 830px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"557\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/20250915_oracle_api_mongodb_01_mongo_db_api_enabled-1-1024x557.png\" alt=\"\" class=\"wp-image-38516\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/20250915_oracle_api_mongodb_01_mongo_db_api_enabled-1-1024x557.png 1024w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/20250915_oracle_api_mongodb_01_mongo_db_api_enabled-1-300x163.png 300w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/20250915_oracle_api_mongodb_01_mongo_db_api_enabled-1-768x418.png 768w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/20250915_oracle_api_mongodb_01_mongo_db_api_enabled-1.png 1152w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Then you can go in <em><strong>Database actions<\/strong><\/em> &gt; <em><strong>Database Users<\/strong><\/em> to either create a user or modify an existing one, with the following privileges : <code>CREATE SESSION<\/code>, <code>CREATE RESOURCE<\/code> (default), and the <code>SODA_APP<\/code> role. After creation, you should <strong>enable REST<\/strong> as shown below. This will allow the API to work on that particular schema.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"146\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/20250915_oracle_api_mongodb_01_enable_REST-1024x146.png\" alt=\"\" class=\"wp-image-38513\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/20250915_oracle_api_mongodb_01_enable_REST-1024x146.png 1024w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/20250915_oracle_api_mongodb_01_enable_REST-300x43.png 300w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/20250915_oracle_api_mongodb_01_enable_REST-768x109.png 768w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/20250915_oracle_api_mongodb_01_enable_REST.png 1249w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>Back on the <em><strong>Tool configuration<\/strong><\/em> tab of your ADB instance, you&#8217;ll find the <strong>Public access URL<\/strong>. Copy it, this will be your <strong>connection string<\/strong> when using the API.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"788\" height=\"141\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/20250915_oracle_api_mongodb_01_connection_string.png\" alt=\"\" class=\"wp-image-38512\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/20250915_oracle_api_mongodb_01_connection_string.png 788w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/20250915_oracle_api_mongodb_01_connection_string-300x54.png 300w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/20250915_oracle_api_mongodb_01_connection_string-768x137.png 768w\" sizes=\"auto, (max-width: 788px) 100vw, 788px\" \/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"h-connection-string-example\">Connection String Example<\/h4>\n\n\n\n<p>For this to work, you have to replace the user and password in the connection string. For instance, if your user is called <code>USER_DB<\/code>, and your password is <code>userpwd<\/code>, then you would use this connection string (without the brackets). Make sure to escape any special character in the password when doing so (see <a href=\"https:\/\/docs.oracle.com\/en\/cloud\/paas\/autonomous-database\/serverless\/adbsb\/mongo-using-oracle-database-api-mongodb.html#GUID-44088366-81BF-4090-A5CF-09E56BB2ACAB\">documentation<\/a>).<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>mongodb:\/\/<strong>user_db:userpwd<\/strong>@A49E7CHE9B320E6-PCCVX8PAE2NZPVBQ.adb.eu-zurich-1.oraclecloudapps.com:27017\/<strong>user_db<\/strong>?authMechanism=PLAIN&amp;authSource=$external&amp;ssl=true&amp;retryWrites=false&amp;loadBalanced=true'<\/code><\/pre>\n\n\n\n<p>Use this connection string with <code>mongosh<\/code> or any tool provided by MongoDB. With <code>mongosh<\/code>, you would connect with this command :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>mongosh 'mongodb:\/\/user_db:userpwd@A49E7CHE9B320E6-PCCVX8PAE2NZPVBQ.adb.eu-zurich-1.oraclecloudapps.com:27017\/adb_admin?authMechanism=PLAIN&amp;authSource=$external&amp;ssl=true&amp;retryWrites=false&amp;loadBalanced=true'<\/code><\/pre>\n\n\n\n<p>You are now connected to the Oracle ADB instance through the <code>mongosh<\/code> utility.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-viewing-oracle-tables-with-the-api\">Viewing Oracle tables with the API<\/h2>\n\n\n\n<p>If you connect to an existing schema with tables, you will notice that running <code>show collections<\/code> (or <code>show tables<\/code>) doesn&#8217;t return anything. In Oracle 19c, only collections\/tables created through the API appear in this list. Standard tables create with a <code>CREATE TABLE<\/code> SQL statement won&#8217;t be displayed.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-included-and-excluded-features-in-the-api\">Included and excluded features in the API<\/h2>\n\n\n\n<p>Once connected, you can query the different databases (schemas, in Oracle terms) of your instance. However, unlike in MongoDB, <strong>you can&#8217;t administer the instance<\/strong> through <code>mongosh<\/code>.<\/p>\n\n\n\n<p>You can look at the <a href=\"https:\/\/docs.oracle.com\/en\/database\/oracle\/mongodb-api\/mgapi\/support-mongodb-apis-operations-and-data-types-reference.html#GUID-B3751279-CA07-4809-BB84-78F09A76CAD9\">documentation<\/a> to check the features included in the API, but here is an extract of the most notable changes :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>All the most basic <strong>aggregated pipelines<\/strong> are available in the API, but more complex ones like <code>$currentOp<\/code> or <code>$merge<\/code> are not yet supported.<\/li>\n\n\n\n<li>Other aggregation operators, like <code>$bucket<\/code>, <code>$documents<\/code> or <code>$sample<\/code> are only available <strong>starting with Oracle 23ai<\/strong>.<\/li>\n\n\n\n<li><code>db.dropDatabase()<\/code> doesn&#8217;t drop the Oracle schema. In fact, it doesn&#8217;t even deletes everything in the schema. It only deletes all <em>real<\/em> collections inside of it. So if you have a traditional table that is not a considered as a collection (not shown in <code>show collections<\/code>), it will not be deleted by this command.<\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-troubleshooting-mongoservererror-database-connection-unavailable\">Troubleshooting <code>MongoServerError: Database connection unavailable<\/code><\/h2>\n\n\n\n<p>You might encounter the following error :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>MongoServerError: Database connection unavailable.&nbsp;Ensure that the user exists and the schema is enabled for use with Oracle REST Data Services. A schema can be enabled by calling the PL\/SQL procedure ORDS.ENABLE_SCHEMA<\/code><\/pre>\n\n\n\n<p>If you see this message, you can either follow the procedure or remember to enable REST directly on the OCI <strong><em>Database Actions<\/em><\/strong> panel, as shown above.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>In short, <strong>Oracle&#8217;s MongoDB API<\/strong> provides an interesting bridge between the relational and document worlds. Even though some MongoDB features are supported yet, the API offers a straightforward way to connect MongoDB and Oracle Autonomous Database. It makes it <strong>ideal for testing, for migration or even for hybrid setups<\/strong>. For developers used to MQL, it can significantly ease the transition to Oracle&#8217;s ecosystem.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>If you&#8217;ve ever had to deal with MongoDB after years (or even decades) of working with SQL, you&#8217;ve probably realized that querying JSON documents can sometimes be painful, to say the least. In response to this, Oracle (and others) use a not-so-native adaptation of SQL to query JSON documents. And if you&#8217;ve ever had to [&hellip;]<\/p>\n","protected":false},"author":152,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[955,3788,1739,2966,59],"tags":[979,2045,1628,694,2562,2961,3690,1375,96,2046],"type_dbi":[],"class_list":["post-38488","post","type-post","status-publish","format-standard","hentry","category-cloud","category-mongodb","category-nosql","category-oci","category-oracle","tag-api","tag-autonomous-database","tag-document","tag-json","tag-migration-2","tag-mongodb","tag-mongoservererror","tag-oci","tag-oracle","tag-query"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.4) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Using Oracle API for MongoDB on OCI - dbi Blog<\/title>\n<meta name=\"description\" content=\"Create hybrid setups or migrate from MongoDB to Oracle (and vice-versa ?) with the official Oracle API for MongoDB.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.dbi-services.com\/blog\/using-oracle-api-for-mongodb-on-oci\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Using Oracle API for MongoDB on OCI\" \/>\n<meta property=\"og:description\" content=\"Create hybrid setups or migrate from MongoDB to Oracle (and vice-versa ?) with the official Oracle API for MongoDB.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/using-oracle-api-for-mongodb-on-oci\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2025-10-15T06:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-12-23T19:00:36+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/image-7.png\" \/>\n\t<meta property=\"og:image:width\" content=\"903\" \/>\n\t<meta property=\"og:image:height\" content=\"173\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Julien Delattre\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Julien Delattre\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/using-oracle-api-for-mongodb-on-oci\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/using-oracle-api-for-mongodb-on-oci\\\/\"},\"author\":{\"name\":\"Julien Delattre\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/764ab019cc9dec42655b4c6b9b8e474e\"},\"headline\":\"Using Oracle API for MongoDB on OCI\",\"datePublished\":\"2025-10-15T06:00:00+00:00\",\"dateModified\":\"2025-12-23T19:00:36+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/using-oracle-api-for-mongodb-on-oci\\\/\"},\"wordCount\":796,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/using-oracle-api-for-mongodb-on-oci\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2025\\\/05\\\/image-7.png\",\"keywords\":[\"api\",\"Autonomous Database\",\"Document\",\"json\",\"migration\",\"mongodb\",\"mongoservererror\",\"OCI\",\"Oracle\",\"query\"],\"articleSection\":[\"Cloud\",\"MongoDB\",\"NoSQL\",\"OCI\",\"Oracle\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/using-oracle-api-for-mongodb-on-oci\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/using-oracle-api-for-mongodb-on-oci\\\/\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/using-oracle-api-for-mongodb-on-oci\\\/\",\"name\":\"Using Oracle API for MongoDB on OCI - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/using-oracle-api-for-mongodb-on-oci\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/using-oracle-api-for-mongodb-on-oci\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2025\\\/05\\\/image-7.png\",\"datePublished\":\"2025-10-15T06:00:00+00:00\",\"dateModified\":\"2025-12-23T19:00:36+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/764ab019cc9dec42655b4c6b9b8e474e\"},\"description\":\"Create hybrid setups or migrate from MongoDB to Oracle (and vice-versa ?) with the official Oracle API for MongoDB.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/using-oracle-api-for-mongodb-on-oci\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/using-oracle-api-for-mongodb-on-oci\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/using-oracle-api-for-mongodb-on-oci\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2025\\\/05\\\/image-7.png\",\"contentUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2025\\\/05\\\/image-7.png\",\"width\":903,\"height\":173},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/using-oracle-api-for-mongodb-on-oci\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Using Oracle API for MongoDB on OCI\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/\",\"name\":\"dbi Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/764ab019cc9dec42655b4c6b9b8e474e\",\"name\":\"Julien Delattre\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a97d00e680bbf237126e24b65281cbcb66cd20bd1ed2d14bf928991b2bf68eb5?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a97d00e680bbf237126e24b65281cbcb66cd20bd1ed2d14bf928991b2bf68eb5?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a97d00e680bbf237126e24b65281cbcb66cd20bd1ed2d14bf928991b2bf68eb5?s=96&d=mm&r=g\",\"caption\":\"Julien Delattre\"},\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/author\\\/juliendelattre\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Using Oracle API for MongoDB on OCI - dbi Blog","description":"Create hybrid setups or migrate from MongoDB to Oracle (and vice-versa ?) with the official Oracle API for MongoDB.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.dbi-services.com\/blog\/using-oracle-api-for-mongodb-on-oci\/","og_locale":"en_US","og_type":"article","og_title":"Using Oracle API for MongoDB on OCI","og_description":"Create hybrid setups or migrate from MongoDB to Oracle (and vice-versa ?) with the official Oracle API for MongoDB.","og_url":"https:\/\/www.dbi-services.com\/blog\/using-oracle-api-for-mongodb-on-oci\/","og_site_name":"dbi Blog","article_published_time":"2025-10-15T06:00:00+00:00","article_modified_time":"2025-12-23T19:00:36+00:00","og_image":[{"width":903,"height":173,"url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/image-7.png","type":"image\/png"}],"author":"Julien Delattre","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Julien Delattre","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/using-oracle-api-for-mongodb-on-oci\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/using-oracle-api-for-mongodb-on-oci\/"},"author":{"name":"Julien Delattre","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/764ab019cc9dec42655b4c6b9b8e474e"},"headline":"Using Oracle API for MongoDB on OCI","datePublished":"2025-10-15T06:00:00+00:00","dateModified":"2025-12-23T19:00:36+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/using-oracle-api-for-mongodb-on-oci\/"},"wordCount":796,"commentCount":0,"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/using-oracle-api-for-mongodb-on-oci\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/image-7.png","keywords":["api","Autonomous Database","Document","json","migration","mongodb","mongoservererror","OCI","Oracle","query"],"articleSection":["Cloud","MongoDB","NoSQL","OCI","Oracle"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/using-oracle-api-for-mongodb-on-oci\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/using-oracle-api-for-mongodb-on-oci\/","url":"https:\/\/www.dbi-services.com\/blog\/using-oracle-api-for-mongodb-on-oci\/","name":"Using Oracle API for MongoDB on OCI - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/using-oracle-api-for-mongodb-on-oci\/#primaryimage"},"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/using-oracle-api-for-mongodb-on-oci\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/image-7.png","datePublished":"2025-10-15T06:00:00+00:00","dateModified":"2025-12-23T19:00:36+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/764ab019cc9dec42655b4c6b9b8e474e"},"description":"Create hybrid setups or migrate from MongoDB to Oracle (and vice-versa ?) with the official Oracle API for MongoDB.","breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/using-oracle-api-for-mongodb-on-oci\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/using-oracle-api-for-mongodb-on-oci\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbi-services.com\/blog\/using-oracle-api-for-mongodb-on-oci\/#primaryimage","url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/image-7.png","contentUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/05\/image-7.png","width":903,"height":173},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/using-oracle-api-for-mongodb-on-oci\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Using Oracle API for MongoDB on OCI"}]},{"@type":"WebSite","@id":"https:\/\/www.dbi-services.com\/blog\/#website","url":"https:\/\/www.dbi-services.com\/blog\/","name":"dbi Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/764ab019cc9dec42655b4c6b9b8e474e","name":"Julien Delattre","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/a97d00e680bbf237126e24b65281cbcb66cd20bd1ed2d14bf928991b2bf68eb5?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/a97d00e680bbf237126e24b65281cbcb66cd20bd1ed2d14bf928991b2bf68eb5?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/a97d00e680bbf237126e24b65281cbcb66cd20bd1ed2d14bf928991b2bf68eb5?s=96&d=mm&r=g","caption":"Julien Delattre"},"url":"https:\/\/www.dbi-services.com\/blog\/author\/juliendelattre\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/38488","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/users\/152"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=38488"}],"version-history":[{"count":12,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/38488\/revisions"}],"predecessor-version":[{"id":42259,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/38488\/revisions\/42259"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=38488"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=38488"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=38488"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=38488"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}