Comparison of IBM Cloudant and Apache CouchDB API endpoints
The IBM® Cloudant® for IBM Cloud® and Apache CouchDB 3.x API endpoints, and the methods for accessing them, are described here.
The table shows you which endpoints are present in the CouchDB or IBM Cloudant service.
Some CouchDB endpoints don't have IBM Cloudant equivalents because it wouldn't be meaningful. Similarly, some IBM Cloudant endpoints don't have CouchDB equivalents.
While IBM Cloudant is API-compliant with CouchDB, IBM Cloudant doesn't support URL rewrites from the JavaScript function.
For more information about a specific endpoint on a service, click the corresponding link.
| Endpoint & Links | Description |
|---|---|
GET /Cloudant, CouchDB |
Retrieve meta-information about the instance. |
GET /_active_tasksCloudant, CouchDB |
Retrieve a list of running tasks. |
GET /_all_dbsCloudant, CouchDB |
Query a list of all database names in the instance. |
POST /_api/v2/api_keysCloudant |
Generate an API key. |
GET /_api/v2/db/{db}/_securityCloudant |
Retrieve database permissions information. |
PUT /_api/v2/db/{db}/_securityCloudant |
Modify only Cloudant related permissions to database. |
GET /_api/v2/monitoringCloudant |
Monitor a specific cluster aspect. |
GET /_api/v2/user/config/corsCloudant |
Retrieve CORS configuration information. |
PUT /_api/v2/user/config/corsCloudant |
Modify the CORS configuration. |
GET /_db_updatesCouchDB |
List all database events in the instance. The endpoint is not available in IBM Cloudant. |
GET /_membershipCloudant, CouchDB |
Retrieve cluster membership information. Active clusters are indicated in the cluster_nodes field, while all_nodes has all nodes. |
POST /_replicateCloudant, CouchDB |
Request, configure, or stop a replication operation. IBM Cloudant documentation references more request body fields ( selector, since_seq). |
PUT /_replicator/{doc_id}Cloudant, CouchDB |
Trigger a replication. IBM Cloudant documentation references more request body fields ( selector, since_seq). |
DELETE /_replicatorCloudant, CouchDB |
Cancel an ongoing replication. IBM Cloudant documentation references more request body fields ( selector, since_seq). |
GET /_scheduler/docsCloudant, CouchDB |
Monitor the status of a replication that is described by a replication document. |
HEAD /_scheduler/docsCouchDB |
Retrieve the HTTP headers for the status of a replication that is described by a replication document. |
GET /_scheduler/docs/_replicator/$doc_idCloudant, CouchDB |
Retrieve a replication scheduler document. |
HEAD /_scheduler/docs/_replicator/$doc_idCouchDB |
Retrieve the HTTP headers for a particular replication scheduler document. |
GET /_scheduler/jobsCloudant, CouchDB |
Retrieve replication scheduler jobs. |
HEAD /_scheduler/jobsCouchDB |
Retrieve the HTTP headers for replication scheduler jobs. |
GET /_scheduler/jobs/{job_id}Cloudant |
Retrieve the state of a single replication task based on its replication ID. |
HEAD /_scheduler/jobs/{job_id}Cloudant |
Retrieve the HTTP headers of a single replication task based on its replication ID. |
POST /_search_analyzeCloudant, CouchDB |
Retrieve the results of analyzer tokenization of the provided sample text. |
GET /_sessionCloudant, CouchDB |
Retrieve information about the authenticated user. CouchDB documentation references a query parameter (basic). |
POST /_sessionCloudant, CouchDB |
Start a new session for the specified user credentials. Cookie-based user login. CouchDB documentation references an extra query parameter (next). |
DELETE /_sessionCloudant, CouchDB |
Retrieve a response that instructs the HTTP client to clear the cookie. |
GET /_utilsCouchDB |
Access the built-in Fauxton administration interface. |
GET /_uuidsCloudant, CouchDB |
Request one or more Universally Unique Identifiers (UUIDs). |
GET /favicon.icoCouchDB |
Get the binary content for the favicon.ico site icon. |
HEAD /{db}Cloudant, CouchDB |
Retrieve the HTTP headers that contain a minimal amount of information about the specified database. |
GET /{db}Cloudant, CouchDB |
Retrieve information about the specified database. |
POST /{db}Cloudant, CouchDB |
Create or modify a document in the specified database by using the supplied JSON document. |
PUT /{db}Cloudant, CouchDB |
Create a database. Database names must start with a lowercase letter and contain only the following characters: lowercase characters (a-z), digits (0-9), any of the characters _, $, (, ), +, -, and /. |
DELETE /{db}Cloudant, CouchDB |
Delete the specified database, and all the documents and attachments contained within it. |
GET /{db}/_all_docsCloudant, CouchDB |
Query a list of all documents in a database. CouchDB documentation references more query parameters ( end_key, endkey_docid, end_key_doc_id, stale, start_key, startkey_docid,
start_key_doc_id, update_seq). For IBM Cloudant, use GET _all_docs. |
POST /{db}/_all_docsCloudant, CouchDB |
Query a list of all documents in a database by using the HTTP POST method where the query is submitted as a JSON object in the request body.CouchDB documentation references more query parameters ( end_key, endkey_docid,
end_key_doc_id, stale, start_key, startkey_docid, start_key_doc_id, update_seq). |
POST /{db}/_bulk_docsCloudant, CouchDB |
Create and update multiple documents at the same time within a single request. CouchDB documentation references an extra request object field ( new_edits). |
POST /{db}/_bulk_getCloudant, CouchDB |
Retrieve specific revisions or revision histories for multiple documents. |
GET /{db}/_changesCloudant, CouchDB |
List of changes that are made to documents in the database, including insertions, updates, and deletions. CouchDB includes query parameters ( attachments, att_encoding_info, last-event-id, view). |
POST /{db}/_changesCloudant, CouchDB |
List of changes that are made to documents in the database, including insertions, updates, and deletions. |
POST /{db}/_compactCouchDB |
Request compaction of the specified database. |
POST /{db}/_compact/{ddoc}CouchDB |
Compact the view indexes associated with the specified design document. |
HEAD /{db}/_design/{ddoc}Cloudant, CouchDB |
Retrieve the HTTP headers that contain a minimal amount of information about the specified design document. |
GET /{db}/_design/{ddoc}Cloudant, CouchDB |
Retrieve a design document with the specified doc_id from the specified database. |
PUT /{db}/_design/{ddoc}Cloudant, CouchDB |
Create a new named design document or create a new revision of the existing design document. IBM Cloudant documentation references an extra request body field (indexes). CouchDB documentation references more request body fields (language, options). |
DELETE /{db}/_design/{ddoc}Cloudant, CouchDB |
Delete the specified document from the database. |
COPY /{db}/_design/{ddoc}Cloudant, CouchDB |
Copy an existing design document to a new or existing one. |
GET /{db}/_design/{ddoc}/_infoCloudant, CouchDB |
Obtain information about the specified design document, including the index, index size, and status of the design document. |
GET /{db}/_design/{ddoc}/_search_info/{index}Cloudant, CouchDB |
Retrieve search index metadata information, such as the size of the index on disk. |
GET /{db}/_design/{ddoc}/_search/{index}Cloudant, CouchDB |
Query an index by using the HTTP GET method. |
POST /{db}/_design/{ddoc}/_search/{index}Cloudant |
Query an index by using the HTTP POST method where the query is submitted as a JSON object in the request body. |
GET /{db}/_design/{ddoc}/_view/{view}Cloudant, CouchDB |
Execute the view function from the specified design document. CouchDB documentation references more query parameters (conflicts, end_key, end_key_doc_id, attachments, att_encoding_info, sorted, start_key, start_key_doc_id, update_seq). |
POST /{db}/_design/{ddoc}/_view/{view}Cloudant, CouchDB |
Execute the view function from the specified design document. CouchDB documentation references more query parameters (conflicts, end_key, end_key_doc_id, attachments, att_encoding_info, sorted, start_key, start_key_doc_id, update_seq). |
HEAD /{db}/_design/{ddoc}/{attname}Cloudant, CouchDB |
Retrieve the HTTP headers that contain a minimal amount of information about the specified attachment. For IBM Cloudant, use {attachment_name} instead of {attname}. |
GET /{db}/_design/{ddoc}/{attname}Cloudant, CouchDB |
Retrieve the file attachment associated with the design document. |
PUT /{db}/_design/{ddoc}/{attname}Cloudant, CouchDB |
Upload the supplied content as an attachment to the specified design document. |
DELETE /{db}/_design/{ddoc}/{attname}Cloudant, CouchDB |
Delete the attachment of the specified design document. |
POST /{db}/_ensure_full_commitCouchDB |
Commit any recent changes to the specified database to disk. |
POST /{db}/_explainCloudant, CouchDB |
Identify which index is being used by a particular query. |
POST /{db}/_findCloudant, CouchDB |
Find documents that use a declarative JSON querying syntax. IBM Cloudant documentation references more request body fields (r, bookmark). |
GET /{db}/_indexCloudant, CouchDB |
List indexes. |
POST /{db}/_indexCloudant, CouchDB |
Create an index on a database. |
DELETE /{db}/_index/_design/{ddoc}/{type}/{index}Cloudant, CouchDB |
Delete an index. |
GET /{db}/_local/{doc_id}Cloudant, CouchDB |
Get the specified local document. |
PUT /{db}/_local/{doc_id}Cloudant, CouchDB |
Store the specified local document. Local documents aren't replicated to other databases. |
COPY /{db}/_local/{doc_id}Cloudant, CouchDB |
Copy the specified local document. |
DELETE /{db}/_local/{doc_id}Cloudant, CouchDB |
Delete the specified local document. |
POST /{db}/_missing_revsCloudant (This endpoint is deprecated. See POST /{db}/_revs_diff.), CouchDB |
Retrieve the document revisions from the list that don't exist in the database. |
POST /{db}/_purgeCouchDB |
Remove the references to deleted documents from the database. |
POST /{db}/_revs_diffCloudant, CouchDB |
Given a set of document or revision IDs, retrieve the subset of document or revision IDs that don't correspond to revisions stored in the database. |
GET /{db}/_securityCloudant, CouchDB |
Retrieve the current security object from the specified database. |
PUT /{db}/_securityCloudant, CouchDB |
Set the security object for the specific database. |
GET /{db}/_shardsCloudant, CouchDB |
Retrieve information about the shards in the cluster. |
POST /{db}/_view_cleanupCouchDB |
Remove view index files that are no longer required because of changed views within design documents. |
HEAD /{db}/{docid}Cloudant, CouchDB |
Retrieve the HTTP headers that contain a minimal amount of information about the specified document. |
GET /{db}/{docid}Cloudant, CouchDB |
Retrieve the document specified by the docid from the specified database. |
PUT /{db}/{docid}Cloudant, CouchDB |
Create a new named document or create a new revision of the existing document. |
DELETE /{db}/{docid}Cloudant, CouchDB |
Delete the specified document. |
COPY /{db}/{docid}Cloudant, CouchDB |
Copy an existing document to a new or existing document. |
HEAD /{db}/{docid}/{attname}Cloudant, CouchDB |
Retrieve the HTTP headers that contain a minimal amount of information about the specified attachment. For IBM Cloudant, use {attachment_name} instead of {attname}. |
GET /{db}/{docid}/{attname}Cloudant, CouchDB |
Retrieve the file attachment associated with the document. For IBM Cloudant, use {attachment_name} instead of {attname}. |
PUT /{db}/{docid}/{attname}Cloudant, CouchDB |
Upload the supplied content as an attachment to the specified document. For IBM Cloudant, use {attachment_name} instead of {attname}. |
DELETE /{db}/{docid}/{attname}Cloudant, CouchDB |
Delete the attachment associated with the specified doc. For IBM Cloudant, use {attachment_name} instead of {attname}. |