Table of contents
  1. 1. Overview
        1. 1.1.1.1. Configuration
        2. 1.1.1.2. Features
  2. 2. Implementation Notes

Overview

Assembly: mindtouch.deki
Class: MindTouch.Deki.DekiWikiService
SID: sid://mindtouch.com/2006/11/dekiwiki
Configuration
NameTypeDescription
admin-db-passwordstringDatabase administrator password.
admin-db-userstring?Database administrator user name (default: "root").
apikeystring?Key to access protected features of the service.
authtoken-saltstringPrivate key used to generate unique auth tokens
banned-wordsstring?Comma separated list of banned words
deki-db-catalogstring?Database table name (default: wikidb).
deki-db-optionsstringOptional connection string parameters
deki-db-passwordstringPassword for database user.
deki-db-portint?Database port (default: 3306).
deki-db-serverstring?Database host name (default: localhost).
deki-db-userstring?Database user name (default: wikiuser).
deki-languagestring?Site language (default: "en-US").
deki-pathstringDeki installation folder
deki-resources-pathstring?Path to Deki resources folder (default: "%deki-path%/resources")
deki-signaturestring?Puglic Digital Signature key to verify incoming requests from MindTouch Deki. (default: none)
deki-sitenamestring?Site name (default: "MindTouch Deki").
imagemagick-convert-pathstringPath to ImageMagick converter tool
imagemagick-identify-pathstringPath to ImageMagick identify tool
max-image-sizeint?Maximum supported image size in bytes or 0 for no limit (default: 0).
service-licensestring?signed service-license
uri.loguri?Uri for logging service.
uri.selfuriUri for current service (provided by Host).
Features
NameDescription
DELETE:Stop service
DELETE:archive/files/{fileid}Remove a file from the archive (wipe)
DELETE:archive/filesRemoves all files from the archive (wipe)
DELETE:files/{fileid}/{filename}Delete file attachment
DELETE:files/{fileid}/descriptionReset the file description
DELETE:files/{fileid}/properties/{key}Remove an attachment property
DELETE:files/{fileid}Delete file attachment
DELETE:groups/{groupid}Remove a group
DELETE:pages/{pageid}/comments/{commentnumber}Mark a comment as being deleted. This hides comment content from non admins
DELETE:pages/{pageid}/files/{filename}/descriptionReset the file description
DELETE:pages/{pageid}/files/{filename}Delete file attachment
DELETE:pages/{pageid}/properties/{key}Remove a page property
DELETE:pages/{pageid}/securityReset page restricts and grants
DELETE:pages/{pageid}Deletes a page and optionally descendant pages by moving them to the archive
DELETE:site/bans/{banid}Remove a ban entry
DELETE:site/logo.pngRemove the site logo
DELETE:site/logoRemove the site logo
DELETE:site/properties/{key}Remove a site property
DELETE:site/services/{id}Delete a service
DELETE:users/{userid}/properties/{key}Remove a user property
GET:$files/{name}Retrieve file contents
GET:Retrieve extension description
GET:archive/files/{fileid}/{filename}Retrieve file attachment content
GET:archive/files/{fileid}/infoRetrieves file info for a deleted file
GET:archive/files/{fileid}Retrieves file content for a deleted file
GET:archive/filesRetrieves file info for all deleted files
GET:archive/pages/{pageid}/contentsRetrieve the contents of a deleted page for previewing
GET:archive/pages/{pageid}/infoRetrieve basic page information for the deleted page
GET:archive/pages/{pageid}/subpagesRetrieve the child pages that were deleted as well from deleting the given page
GET:archive/pages/{pageid}Retrieve basic page information for the deleted page
GET:archive/pagesRetrieve the pages that can be potentially restored from deletion.
GET:archiveRetrieves a summary of available archive information
GET:files/{fileid}/{filename}Retrieve file attachment content
GET:files/{fileid}/descriptionretrieves a file description
GET:files/{fileid}/infoRetrieve file attachment information
GET:files/{fileid}/properties/{key}/infoRetrieve the metadata about an attachment property
GET:files/{fileid}/properties/{key}Retrieve the content of an attachment property
GET:files/{fileid}/propertiesRetrieve the properties associated with a file attachment
GET:files/{fileid}/revisionsRetrieve file revision info
GET:files/{fileid}Retrieve file attachment content
GET:filesRetrieve information for all attached files
GET:groups/{groupid}/usersReturn a list of users in a group
GET:groups/{groupid}Retrieve group information
GET:groupsRetrieve list of groups.
GET:licenseRetrieve server license. Requires ADMIN permission to retrieve private information, otherwise only the public information is obtained.
GET:logo.pngRetrieve MindTouch Deki logo
GET:pages/{pageid}/aliasesRetrieve list of page aliases
GET:pages/{pageid}/comments/{commentnumber}/contentRetrieve the comment text only
GET:pages/{pageid}/comments/{commentnumber}Retrieve a comment and metadata
GET:pages/{pageid}/commentsRetrieve the comments on a page
GET:pages/{pageid}/contentsRetrieve the contents of a page.
GET:pages/{pageid}/diffShow changes between revisions
GET:pages/{pageid}/feed/newRetrieve feed of page changes
GET:pages/{pageid}/feedRetrieve feed of page changes
GET:pages/{pageid}/files,subpagesRetrieves a list of files and subpages for a given page
GET:pages/{pageid}/files/{filename}/descriptionretrieves a file description
GET:pages/{pageid}/files/{filename}/infoRetrieve file attachment information
GET:pages/{pageid}/files/{filename}/revisionsRetrieve file revision info
GET:pages/{pageid}/files/{filename}Retrieve file attachment content
GET:pages/{pageid}/filesRetrieves a list of files for a given page
GET:pages/{pageid}/infoRetrieve page information
GET:pages/{pageid}/linksRetrieve list of inbound or outbound page links
GET:pages/{pageid}/pdfExport a page to PDF
GET:pages/{pageid}/properties/{key}/infoRetrieve the metadata about a page property
GET:pages/{pageid}/properties/{key}Retrieve the content of a page property
GET:pages/{pageid}/propertiesRetrieve the properties associated with a page
GET:pages/{pageid}/revisionsRetrieve revision history of a given title
GET:pages/{pageid}/securityRetrieve page security info
GET:pages/{pageid}/subpagesRetrieve list of sub-pages
GET:pages/{pageid}/tagsRetrieve the tags on a page.
GET:pages/{pageid}/treeBuilds a site map starting from a given page.
GET:pages/{pageid}Retrieve aggregate page information including attachments
GET:pages/popularRetrieves a list of popular pages.
GET:pagesBuilds a site map starting from 'home' page.
GET:site/bans/{banid}See a specific ban entry
GET:site/bansGet a list of all IP and user bans
GET:site/feed/newRetrieve feed of new page creations
GET:site/feedRetrieve feed of site changes
GET:site/functionsGet list of available extensions
GET:site/logo.pngRetrieve the site logo image
GET:site/logoRetrieve the site logo image
GET:site/nav/{pageid}/children,siblingsRetrieve <div> tags for the sub-pages and sibling pages of the given page.
GET:site/nav/{pageid}/childrenRetrieve <div> tags for the sub-pages of the given page.
GET:site/nav/{pageid}/fullRetrieve <div> tags of the full navigation tree for the given page.
GET:site/nav/{pageid}/siblingsRetrieve <div> tags for sibling pages of the given page.
GET:site/opensearch/descriptionGet the OpenSearch Description document
GET:site/opensearch/suggestionsSearch the Deki index
GET:site/opensearchSearch the Deki index
GET:site/operationsRetrieve all known security operations
GET:site/properties/{key}/infoRetrieve the metadata about a site property
GET:site/properties/{key}Retrieve the content of a site property
GET:site/propertiesRetrieve the properties associated with the site
GET:site/roles/{roleid}Retrieve a role
GET:site/rolesRetrieve list of defined roles
GET:site/search/rebuildReturn rebuild information
GET:site/searchSearch the Deki index
GET:site/services/{id}Retrieve service.
GET:site/servicesRetrieve list of services.
GET:site/settingsRetrieve all configuration settings
GET:site/tags/{tagid}Retrieve pages with tag
GET:site/tagsRetrieve all tags
GET:users/{userid}/favorites/feedRetrieve feed of user favorites changes
GET:users/{userid}/favoritesRetrieves a list of favorite pages for a user.
GET:users/{userid}/feedRetrieve feed of user contributions
GET:users/{userid}/properties/{key}/infoRetrieve the metadata about a user property
GET:users/{userid}/properties/{key}Retrieve the content of a user property
GET:users/{userid}/propertiesRetrieve the properties associated with a user
GET:users/{userid}Retrieve information about a user.
GET:users/authenticateAuthenticate a user given http header Credentials or an auth token. Response status 200 implies valid credentials and contains a new auth token.
GET:usersRetrieve list of users.
HEAD:$files/{name}Retrieve file headers
HEAD:files/{fileid}/{filename}Retrieve file attachment content (Note: image manipulation arguments are ignored for HEAD requests)
HEAD:files/{fileid}Retrieve file attachment content (Note: image manipulation arguments are ignored for HEAD requests)
HEAD:pages/{pageid}/files/{filename}Retrieve file attachment content (Note: image manipulation arguments are ignored for HEAD requests)
LOCK:files/{fileid}/{filename}Lock file (always returns 412 - Precondition Failed)
LOCK:files/{fileid}Lock file (always returns 412 - Precondition Failed)
LOCK:pages/{pageid}/files/{filename}Lock file (always returns 412 - Precondition Failed)
OPTIONS:files/{fileid}/{filename}Retrieve available HTTP options
OPTIONS:files/{fileid}Retrieve available HTTP options
OPTIONS:pages/{pageid}/files/{filename}Retrieve available HTTP options
POST:{function}Invoke extension function
POST:archive/files/restore/{fileid}Restores a deleted file back to its page
POST:archive/pages/{pageid}/restoreRestore all revisions of a given page
POST:files/{fileid}/indexre-index an attachment
POST:files/{fileid}/moveMove an attachment from one page to another
POST:files/{fileid}/propertiesCreate an attachment property
POST:groupsAdd or modify a group
POST:pages/{pageid}/allowedFilter a list of user ids based on access to the page
POST:pages/{pageid}/commentsPost a new comment to a page
POST:pages/{pageid}/contentsUpdate contents of a page
POST:pages/{pageid}/indexre-index a page and it's attributes
POST:pages/{pageid}/message/*//*Post a custom page event into the pubsub bus (limited to 128KB)
POST:pages/{pageid}/moveMove page to a new location
POST:pages/{pageid}/propertiesCreate a page property
POST:pages/{pageid}/revertRevert page to an earlier revision
POST:pages/{pageid}/securityModify page security by adding and removing grants
POST:site/bansCreate a ban entry
POST:site/propertiesCreate a site property
POST:site/search/rebuildRebuild the Deki Lucene index
POST:site/services/{id}/startStart or restart a service
POST:site/services/{id}/stopStop a service
POST:site/services/{id}Restart a service (backwards compatibility)
POST:site/servicesAdd a service (backward compatibility: empty body will restart all services)
POST:users/{userid}/allowedCheck one or more resources if given operation is allowed.
POST:users/{userid}/propertiesCreate a user property
POST:users/authenticateAuthenticate a user given http header Credentials or an auth token. When using external authentication, this will automatically create an account and synchronize groups. Response status 200 implies valid credentials and contains a new auth token.
POST:usersAdd or modify a user
PUT:files/{fileid}/{filename}Upload file attachment
PUT:files/{fileid}/descriptionUpdate attachment description
PUT:files/{fileid}/properties/{key}Update an existing attachment property
PUT:files/{fileid}/propertiesPerform changes on multiple attachment properties
PUT:files/{fileid}Upload file attachment
PUT:groups/{groupid}/usersSet the members for a group
PUT:groups/{groupid}Modify an existing group
PUT:licenseUpdate server license.
PUT:pages/{pageid}/comments/{commentnumber}/contentEdit the specified comment
PUT:pages/{pageid}/files/{filename}/descriptionUpdate attachment description
PUT:pages/{pageid}/files/{filename}Upload file attachment
PUT:pages/{pageid}/properties/{key}Update an existing page property
PUT:pages/{pageid}/propertiesPerform changes on multiple page properties
PUT:pages/{pageid}/securitySet page security info
PUT:pages/{pageid}/tagsSets the tags on a page.
PUT:site/logo.pngSave a new site logo image
PUT:site/logoSave a new site logo image
PUT:site/properties/{key}Update an existing site property
PUT:site/propertiesPerform changes on multiple site properties
PUT:site/roles/{roleid}Modify or add a role
PUT:site/services/{id}Update a service
PUT:site/settingsSet all configuration settings
PUT:users/{userid}/passwordSet password for a given user.
PUT:users/{userid}/properties/{key}Update an existing user property
PUT:users/{userid}/propertiesPerform changes on multiple user properties
PUT:users/{userid}Modify an existing user

Implementation Notes

To learn more about a particular feature, click on the corresponding link above.

Tag page
Viewing 2 of 2 comments: view all
How was this documentation generated? Is there a tool or process that can automatically generate documentation from the code into dekiwiki, or was this added to by hand? Thanks!
Posted 22:37, 9 May 2008
It was auto-generated with the blueprints tool (available with the Dream SDK or in SVN under public\dream\trunk\src\mindtouch.blueprints.

Use:

mindtouch.blueprints.exe -url=<url of your wiki api> -login=<your login> -password=<your password> <location of the dll for which to generate documentation>

Example:

mindtouch.blueprints.exe -url=http://deki-hayes/@api/deki -login=Admin -password=password /var/www/deki-hayes/bin/mindtouch.deki.dll

You can pass it any dll containing a dream service. edited 20:33, 13 May 2008
Posted 20:30, 13 May 2008
Viewing 2 of 2 comments: view all
You must login to post a comment.