forked from projectkudu/kudu
-
Notifications
You must be signed in to change notification settings - Fork 0
REST API
David Ebbo edited this page Mar 6, 2014
·
31 revisions
This API is accessed the same way as the git endpoint. e.g. if your git URL is https://yoursite.scm.azurewebsites.net/yoursite.git, then the API to get the list of deployments will be https://yoursite.scm.azurewebsites.net/deployments.
The credentials you use are the same as when you git push. See Deployment-credentials for more details.
Note: in older builds, use live/scm instead of scm
GET scm/info
Get information about the repository
POST scm/clean
Clean the repository, using 'git clean -xdff'
DELETE scm
Delete the repository
POST command
Executes an arbitrary command line and return its output
The VFS API is based on https://github.com/c9/vfs-http-adapter. Paths with trailing slashes are treated as directories.
GET vfs/{path}
Gets a file at path
GET vfs/{path}/
Lists files at directory specified by path.
PUT vfs/{path}
Puts a file at path.
PUT vfs/{path}/
Creates a directory at path
The Zip API allows downloading folders as zip files, or expanding zip files into folders.
GET zip/{path}
Zip up and download the specified folder. The zip doesn't include the top folder itself.
PUT vfs/{path}
Upload a zip file which gets expanded into the specified folder. Existing files are not deleted
unless they need to be overwritten by files in the zip.
GET deployments
Get the list of all deployments
GET deployments/{id}
Get a deployment
PUT deployments/{id}
Deploy a previous deployment
DELETE deployments/{id}
Delete a deployment
GET deployments/{id}/log
Get the list of log entries for a deployment
GET deployments/{id}/log/{logId}
Get the list of log entry details for a log entry
PUT sshkey
Set the private key. The supported key format is privacy enhanced mail (PEM)
GET sshkey
Get the public key. Optional: ?ensurePublicKey=1 to generate if none exist.
GET environment
Get the Kudu version
POST settings
Create or change a setting
GET settings
Get the list of all settings
GET settings/{key}
Get the value of a setting
DELETE settings/{key}
Delete a setting
GET dump
Get all the diagnostic logs as a zip file
POST diagnostics/settings
Create or change a setting
GET diagnostics/settings
Get the list of all settings
GET diagnostics/settings/{key}
Get the value of a setting
DELETE diagnostics/settings/{key}
Delete a setting
Sample of available settings.
{
"AzureDriveEnabled": false(|true),
"AzureDriveTraceLevel": "Error(|Information|Warning|Verbose)",
"AzureTableEnabled": false(|true),
"AzureTableTraceLevel": "Error(|Information|Warning|Verbose)",
"AzureBlobEnabled": false(|true),
"AzureBlobTraceLevel": "Error(|Information|Warning|Verbose)",
}
GET api/logs/recent
Retrieve application logs found in the LogFiles\Application folder, starting with the most recent entries.
The following query string parameter(s) are supported:
- top: the number of log entries to return (default is 100, maximum is 1000)
GET api/extensions/remote
List all extension package infos available on the online (remote) server. The following query strings are supported.
- filter: matching string
GET api/extensions/local
List all extension package infos currently installed. The following query strings are supported.
- filter: matching string
GET api/extensions/remote/{id}
Get a package info with {id} from remote store.
GET api/extensions/local/{id}
Get a package info with {id} currently installed.
POST api/extensions
Install or update the package to local machine. The payload is the package info returned by List/Get apis above.
DELETE api/extensions/local/{id}
Uninstall the package with {id}.