{"openapi":"3.0.1","info":{"title":"Confluence Data Center","description":"This is the reference document for the Atlassian Confluence DC REST API. The REST API is for developers who want to: \n\n - integrate Confluence with other applications;\n\n - create scripts that interact with Confluence; or\n\n - develop plugins that enhance the Confluence UI, using REST to interact with the backend. \n\n You can read more about developing Confluence plugins in the [Confluence Developer Documentation](https://developer.atlassian.com/server/confluence/).","termsOfService":"https://www.atlassian.com/legal/software-license-agreement","version":"9.0.0"},"servers":[{"url":"http://{baseurl}/confluence","variables":{"baseurl":{"default":"example.com:7990","description":"Address of your Confluence instance"}}}],"components":{"securitySchemes":{"basic":{"type":"http","description":"In order to use basic authorization, provide username:password Base64 encoded in the 'Authorization' header.","scheme":"basic"}},"schemas":{"Group":{},"Credentials":{"type":"object","properties":{"password":{"type":"string","example":"password"}}},"UserDetailsForCreation":{"type":"object","properties":{"userName":{"type":"string","example":"user1"},"fullName":{"type":"string","example":"Some User"},"email":{"type":"string","example":"someuser@someemail.com"},"password":{"type":"string","example":"password"},"notifyViaEmail":{"type":"boolean","example":true}}},"MockAttachmentRequest":{"type":"object","properties":{"file":{"type":"string","description":"The name of the multipart/form-data parameter that contains attachments must be \\\"file\\\"."},"comment":{"type":"string","description":"(optional) a list of \\\"comments\\\" matching the list of attachment data.\\nIf supplied, the size of this list must match the size of the fileParts list."},"minorEdit":{"type":"boolean","description":"(optional) form parameter indicating whether the attachments should be \\\"minorEdits\\\".If \\\"minorEdits\\\" is set to true, no notification email will be generated for that attachment."},"hidden":{"type":"boolean","description":"(optional) form parameter indicating whether the attachments should be \\\"hidden\\\".If \\\"hidden\\\" is set to true, no notification email or activity stream will be generated for that attachment."}}},"Anonymous":{},"Container":{},"Content":{"properties":{"id":{"type":"string","example":"123456"},"type":{"type":"string","example":"page"},"status":{"type":"string","example":"current"},"title":{"type":"string","example":"My Page"},"links":{"type":"object","example":{"webui":"https://www.example.com/display/SPACEKEY/My+Page"}},"space":{"$ref":"#/components/schemas/Space"},"history":{"$ref":"#/components/schemas/History"},"version":{"$ref":"#/components/schemas/Version"},"ancestors":{"type":"array","items":{"$ref":"#/components/schemas/Content"}},"position":{"type":"integer","format":"int32","example":1},"operations":{"type":"array","items":{"$ref":"#/components/schemas/OperationCheckResult"}},"children":{"type":"object"},"descendants":{"type":"object"},"container":{"$ref":"#/components/schemas/Container"},"body":{"type":"object"},"metadata":{"type":"object","example":{"key":"value"}},"extensions":{"type":"object","example":{"key":"value"}},"restrictions":{"type":"object","example":{"use":{"operation":"use","restrictions":[]}}},"historyRef":{"$ref":"#/components/schemas/ReferenceHistory"},"spaceRef":{"$ref":"#/components/schemas/ReferenceSpace"},"containerRef":{"$ref":"#/components/schemas/ReferenceContainer"},"versionRef":{"$ref":"#/components/schemas/ReferenceVersion"}}},"ContentBody":{"properties":{"representation":{"type":"string"},"value":{"type":"string","example":"This is a body"},"webresource":{"$ref":"#/components/schemas/WebResourceDependencies"},"content":{"$ref":"#/components/schemas/ReferenceContent"},"contentRef":{"$ref":"#/components/schemas/ReferenceContent"}}},"ContentRestriction":{"properties":{"content":{"$ref":"#/components/schemas/ReferenceContent"},"operation":{"type":"string"},"restrictions":{"type":"object"}}},"Cursor":{"properties":{"reverse":{"type":"boolean"},"cursorType":{"type":"string","enum":["SPACE","CONTENT"]}}},"FormattedBody":{"properties":{"representation":{"type":"string"},"value":{"type":"string","example":"This is a body"},"webresource":{"$ref":"#/components/schemas/WebResourceDependencies"}}},"History":{"properties":{"previousVersion":{"$ref":"#/components/schemas/ReferenceVersion"},"nextVersion":{"$ref":"#/components/schemas/ReferenceVersion"},"lastUpdated":{"$ref":"#/components/schemas/ReferenceVersion"},"latest":{"type":"boolean","example":true},"createdBy":{"$ref":"#/components/schemas/Person"},"createdDate":{"type":"string","format":"date-time","example":"2020-01-01T00:00:00Z"},"contributors":{"$ref":"#/components/schemas/ReferenceContributors"},"lastUpdatedRef":{"$ref":"#/components/schemas/ReferenceVersion"},"nextVersionRef":{"$ref":"#/components/schemas/ReferenceVersion"},"previousVersionRef":{"$ref":"#/components/schemas/ReferenceVersion"},"contentParentRef":{"$ref":"#/components/schemas/ReferenceContent"}}},"Icon":{"properties":{"path":{"type":"string","example":"http://www.example.com/path/to/image.png"},"width":{"type":"integer","format":"int32","example":16},"height":{"type":"integer","format":"int32","example":16},"isDefault":{"type":"boolean","example":true}}},"KnownUser":{},"Link":{"properties":{"type":{"type":"string"},"path":{"type":"string"}}},"OperationCheckResult":{"properties":{"operation":{"type":"string","example":"read"},"targetType":{"type":"string","example":"page"}}},"PageRequest":{"properties":{"cursor":{"$ref":"#/components/schemas/Cursor"},"start":{"type":"integer","format":"int32"},"limit":{"type":"integer","format":"int32"}}},"PageResponseContent":{"properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Content"}}}},"PageResponseSubject":{"properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Subject"}}}},"Person":{"properties":{"profilePicture":{"$ref":"#/components/schemas/Icon"},"displayName":{"type":"string","example":"Joe Smith"},"type":{"type":"string"}}},"ReferenceContainer":{"properties":{"expanded":{"type":"boolean"},"idProperties":{"type":"object"}}},"ReferenceContent":{"properties":{"expanded":{"type":"boolean"},"idProperties":{"type":"object"}}},"ReferenceContributors":{"properties":{"expanded":{"type":"boolean"},"idProperties":{"type":"object"}}},"ReferenceHistory":{"properties":{"expanded":{"type":"boolean"},"idProperties":{"type":"object"}}},"ReferenceIcon":{"properties":{"expanded":{"type":"boolean"},"idProperties":{"type":"object"}}},"ReferenceSpace":{"properties":{"expanded":{"type":"boolean"},"idProperties":{"type":"object"}}},"ReferenceSpaceRetentionPolicy":{"properties":{"expanded":{"type":"boolean"},"idProperties":{"type":"object"}}},"ReferenceUserStatus":{"properties":{"expanded":{"type":"boolean"},"idProperties":{"type":"object"}}},"ReferenceVersion":{"properties":{"expanded":{"type":"boolean"},"idProperties":{"type":"object"}}},"RestListContent":{"type":"array","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Content"}},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"pageResponse":{"$ref":"#/components/schemas/PageResponseContent"}},"items":{"$ref":"#/components/schemas/Content"}},"Space":{"properties":{"id":{"type":"integer","format":"int64","example":123456},"key":{"type":"string","example":"TEST"},"name":{"type":"string","example":"Test Space"},"status":{"type":"string","example":"current"},"icon":{"$ref":"#/components/schemas/ReferenceIcon"},"description":{"type":"object"},"homepage":{"$ref":"#/components/schemas/ReferenceContent"},"links":{"type":"object"},"type":{"type":"string","example":"global"},"metadata":{"type":"object","example":{"labels":["label1","label2"]}},"retentionPolicy":{"$ref":"#/components/schemas/ReferenceSpaceRetentionPolicy"}}},"Subject":{"properties":{"displayName":{"type":"string"},"type":{"type":"string"}}},"SuperBatchWebResources":{"properties":{"uris":{"type":"object"},"tags":{"type":"object"},"metatags":{"type":"string"}}},"UnknownUser":{},"User":{"properties":{"profilePicture":{"$ref":"#/components/schemas/Icon"},"displayName":{"type":"string","example":"Joe Smith"},"username":{"type":"string","example":"user1"},"userKey":{"type":"string","example":"userkey[admin]"}}},"Version":{"properties":{"by":{"$ref":"#/components/schemas/Person"},"when":{"type":"string","format":"date-time","example":"2020-01-01T00:00:00Z"},"message":{"type":"string","example":"A message"},"number":{"type":"integer","format":"int32","example":1},"minorEdit":{"type":"boolean","example":true},"hidden":{"type":"boolean","example":true},"syncRev":{"type":"string","example":"123456"},"content":{"$ref":"#/components/schemas/ReferenceContent"},"contentRef":{"$ref":"#/components/schemas/ReferenceContent"}}},"WebResourceDependencies":{"properties":{"keys":{"type":"array","example":["key1","key2","key3"],"items":{"type":"string","example":"[\"key1\",\"key2\",\"key3\"]"}},"contexts":{"type":"array","example":["context1","context2","context3"],"items":{"type":"string","example":"[\"context1\",\"context2\",\"context3\"]"}},"uris":{"type":"object"},"tags":{"type":"object"},"superbatch":{"$ref":"#/components/schemas/SuperBatchWebResources"}}},"FilePart":{"type":"object","properties":{"formField":{"type":"boolean"},"name":{"type":"string"},"value":{"type":"string"},"size":{"type":"integer","format":"int64"},"inputStream":{"type":"object"},"contentType":{"type":"string"}}},"SiteBackupSettings":{"properties":{"skipAttachments":{"type":"boolean","example":true},"keepPermanently":{"type":"boolean","example":true},"fileNamePrefix":{"type":"string","example":"backup"}}},"SiteRestoreSettings":{"properties":{"filename":{"type":"string","writeOnly":true},"skipReindex":{"type":"boolean","example":true},"fileName":{"type":"string","example":"backup-2020-01-01-01-01-01.zip"}}},"ExampleMultipartFormData":{"type":"object","properties":{"file":{"type":"string","description":"backup file uploaded. Has to be a zip file."}}},"SpaceBackupSettings":{"properties":{"spaceKeys":{"uniqueItems":true,"type":"array","example":"['SPACE1', 'SPACE2']","items":{"type":"string","example":"['SPACE1', 'SPACE2']"}},"keepPermanently":{"type":"boolean","example":true},"fileNamePrefix":{"type":"string","example":"backup"}}},"SpaceRestoreSettings":{"properties":{"filename":{"type":"string","writeOnly":true},"skipReindex":{"type":"boolean","example":true},"fileName":{"type":"string","example":"space123.zip"}}},"Label":{"properties":{"prefix":{"type":"string","example":"my"},"name":{"type":"string","example":"label"},"id":{"type":"string","example":"1234"},"label":{"type":"string"}}},"PageResponseLabel":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Label"}}}},"JsonContentProperty":{"properties":{"key":{"type":"string"},"value":{"$ref":"#/components/schemas/JsonString"},"version":{"$ref":"#/components/schemas/Version"},"id":{"type":"string"},"content":{"$ref":"#/components/schemas/Content"},"contentRef":{"$ref":"#/components/schemas/ReferenceContent"}}},"JsonString":{"properties":{"value":{"type":"string"}}},"PageResponseJsonContentProperty":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/JsonContentProperty"}}}},"RestListJsonContentProperty":{"type":"array","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"results":{"type":"array","items":{"$ref":"#/components/schemas/JsonContentProperty"}},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"pageResponse":{"$ref":"#/components/schemas/PageResponseJsonContentProperty"}},"items":{"$ref":"#/components/schemas/JsonContentProperty"}},"MacroInstance":{"properties":{"name":{"type":"string","example":"panel"},"body":{"type":"string","example":"This is the body of the panel macro."},"parameters":{"type":"object"}}},"MacroParameterInstance":{"properties":{"value":{"type":"string","example":"value"}}},"PageResponseContentRestriction":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/ContentRestriction"}}}},"PageResponseUser":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/User"}}}},"RestListUser":{"type":"array","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"results":{"type":"array","items":{"$ref":"#/components/schemas/User"}},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"pageResponse":{"$ref":"#/components/schemas/PageResponseUser"}},"items":{"$ref":"#/components/schemas/User"}},"RestInvocationHistory":{"properties":{}},"RestWebhook":{"properties":{"scopeType":{"type":"string"},"events":{"uniqueItems":true,"type":"array","items":{"type":"string"}},"active":{"type":"boolean"},"sslVerificationRequired":{"type":"boolean"},"name":{"type":"string"},"configuration":{"type":"object"},"url":{"type":"string"},"credentials":{"$ref":"#/components/schemas/RestWebhookCredentials"},"statistics":{"type":"object","properties":{},"writeOnly":true}}},"RestWebhookCredentials":{"properties":{"password":{"type":"string"},"username":{"type":"string"}}},"PageResponseGroup":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Group"}}}},"PageResponsePerson":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Person"}}}},"LongTaskStatus":{"properties":{"id":{"type":"string"},"name":{"$ref":"#/components/schemas/Message"},"elapsedTime":{"type":"integer","format":"int64","example":123456},"percentageComplete":{"type":"integer","format":"int32","example":50},"successful":{"type":"boolean","example":true},"messages":{"type":"array","items":{"$ref":"#/components/schemas/Message"}}}},"Message":{"properties":{"translation":{"type":"string"},"key":{"type":"string"},"args":{"type":"array","items":{"type":"object"}}}},"PageResponseLongTaskStatus":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/LongTaskStatus"}}}},"RestListLongTaskStatus":{"type":"array","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"results":{"type":"array","items":{"$ref":"#/components/schemas/LongTaskStatus"}},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"pageResponse":{"$ref":"#/components/schemas/PageResponseLongTaskStatus"}},"items":{"$ref":"#/components/schemas/LongTaskStatus"}},"ContainerSummary":{"properties":{"title":{"type":"string","example":"Demo Title"},"displayUrl":{"type":"string","example":"http://localhost:8080/confluence/display/SPACEKEY/Page+Title"}}},"ContentSearchResult":{},"ReferenceContainerSummary":{"properties":{"expanded":{"type":"boolean"},"idProperties":{"type":"object"}}},"ReferenceObject":{"properties":{"expanded":{"type":"boolean"},"idProperties":{"type":"object"}}},"ReferenceUser":{"properties":{"expanded":{"type":"boolean"},"idProperties":{"type":"object"}}},"ResourceType":{"properties":{"name":{"type":"string"},"type":{"type":"string"},"url":{"type":"string"}}},"SearchPageResponseSearchResult":{"type":"object","properties":{"results":{"type":"array","items":{"$ref":"#/components/schemas/SearchResult"}},"hasMore":{"type":"boolean"},"cqlQuery":{"type":"string"},"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"totalSize":{"type":"integer","format":"int32"},"searchDuration":{"type":"integer","format":"int32"},"archivedResultCount":{"type":"integer","format":"int32"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"}}},"SearchResult":{"properties":{"title":{"type":"string","example":"Page Title"},"excerpt":{"type":"string","example":"This is an excerpt of the page content"},"url":{"type":"string","example":"http://localhost:8080/confluence/display/SPACEKEY/Page+Title"},"resultParentContainer":{"$ref":"#/components/schemas/ContainerSummary"},"resultGlobalContainer":{"$ref":"#/components/schemas/ContainerSummary"},"iconCssClass":{"type":"string"},"lastModified":{"type":"string","format":"date-time"},"friendlyLastModified":{"type":"string"},"entityRef":{"$ref":"#/components/schemas/ReferenceObject"},"resultParentRef":{"$ref":"#/components/schemas/ReferenceContainerSummary"},"resultGlobalContainerRef":{"$ref":"#/components/schemas/ReferenceContainerSummary"},"resourceType":{"$ref":"#/components/schemas/ResourceType"},"entity":{"type":"object"},"entityType":{"type":"string"}}},"SpaceSearchResult":{},"UserSearchResult":{},"RestListLabel":{"type":"array","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Label"}},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"pageResponse":{"$ref":"#/components/schemas/PageResponseLabel"}},"items":{"$ref":"#/components/schemas/Label"}},"JsonSpaceProperty":{"properties":{"key":{"type":"string"},"value":{"$ref":"#/components/schemas/JsonString"},"version":{"$ref":"#/components/schemas/Version"},"space":{"$ref":"#/components/schemas/Space"},"spaceRef":{"$ref":"#/components/schemas/ReferenceSpace"}}},"PageResponseJsonSpaceProperty":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/JsonSpaceProperty"}}}},"PageResponseSpace":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Space"}}}},"PasswordChangeDetails":{"type":"object","properties":{"oldPassword":{"type":"string","example":"oldPassword"},"newPassword":{"type":"string","example":"newPassword"}}},"ContentWatch":{"properties":{"watcher":{"$ref":"#/components/schemas/User"},"contentId":{"type":"string","writeOnly":true},"content":{"$ref":"#/components/schemas/Content"}}},"UserKey":{"properties":{"userKey":{"type":"string","example":"4028d6768851c8900188556ba6000014"}}},"SpaceWatch":{"properties":{"watcher":{"$ref":"#/components/schemas/User"},"space":{"$ref":"#/components/schemas/Space"},"contentTypes":{"type":"array","items":{"type":"string"}}}},"ValidationResult":{"properties":{"successful":{"type":"boolean"},"authorized":{"type":"boolean"},"valid":{"type":"boolean"},"errors":{"type":"object"},"allowedInReadOnlyMode":{"type":"boolean"}}},"RestError":{"properties":{"statusCode":{"type":"integer","format":"int32"},"data":{"$ref":"#/components/schemas/ValidationResult"},"message":{"type":"string"},"reason":{"type":"string"}}},"LongTaskSubmission":{"properties":{"id":{"type":"string"},"links":{"type":"object","example":{"result":"http://localhost:8080/confluence/rest/api/longtask/123/result","status":"http://localhost:8080/confluence/rest/api/longtask/123/status"}},"resultPath":{"type":"string","example":"result"},"statusPath":{"type":"string","example":"status"}}},"Webhook":{"properties":{"createdDate":{"type":"string","format":"date-time"},"updatedDate":{"type":"string","format":"date-time"},"sslVerificationRequired":{"type":"boolean"},"events":{"uniqueItems":true,"type":"array","items":{"$ref":"#/components/schemas/WebhookEvent"}},"name":{"type":"string"},"id":{"type":"integer","format":"int32"},"active":{"type":"boolean"},"configuration":{"type":"object"},"scope":{"$ref":"#/components/schemas/WebhookScope"},"url":{"type":"string"},"credentials":{"$ref":"#/components/schemas/WebhookCredentials"}}},"WebhookCredentials":{"properties":{"password":{"type":"string"},"username":{"type":"string"}}},"WebhookScope":{"properties":{"id":{"maxLength":255,"minLength":0,"type":"string"},"type":{"maxLength":255,"minLength":0,"type":"string"}}},"WebhookEvent":{"properties":{"id":{"type":"string"},"i18nKey":{"type":"string"}}},"DetailedInvocationResult":{"properties":{"description":{"type":"string"},"outcome":{"type":"string","enum":["ERROR","FAILURE","SUCCESS"]}}},"DetailedInvocationRequest":{"properties":{"body":{"type":"string"},"headers":{"type":"object"},"method":{"type":"string","enum":["GET","POST","PUT","DELETE","OPTIONS","HEAD"]},"url":{"type":"string"}}},"DetailedInvocation":{"properties":{"result":{"$ref":"#/components/schemas/DetailedInvocationResult"},"request":{"$ref":"#/components/schemas/DetailedInvocationRequest"},"finish":{"type":"string","format":"date-time"},"start":{"type":"string","format":"date-time"},"eventScope":{"$ref":"#/components/schemas/WebhookScope"},"id":{"type":"string"},"duration":{"type":"object","properties":{"seconds":{"type":"integer","format":"int64"},"zero":{"type":"boolean"},"nano":{"type":"integer","format":"int32"},"negative":{"type":"boolean"},"units":{"type":"array","items":{"type":"object","properties":{"durationEstimated":{"type":"boolean"},"duration":{"type":"object","properties":{"seconds":{"type":"integer","format":"int64"},"zero":{"type":"boolean"},"nano":{"type":"integer","format":"int32"},"negative":{"type":"boolean"}}},"timeBased":{"type":"boolean"},"dateBased":{"type":"boolean"}}}}}},"event":{"$ref":"#/components/schemas/WebhookEvent"}}},"JobStatistics":{"properties":{"totalObjectsCount":{"type":"integer","format":"int64","example":100},"processedObjectsCount":{"type":"integer","format":"int64","example":50},"persistedObjectsCount":{"type":"integer","format":"int64","example":50},"skippedObjectsCount":{"type":"integer","format":"int64","example":0},"reusedObjectsCount":{"type":"integer","format":"int64","example":10}}},"SpaceBackupJobDetails":{"properties":{"id":{"type":"integer","format":"int64","example":1},"jobOperation":{"type":"string","example":"BACKUP","enum":["BACKUP","RESTORE"]},"jobScope":{"type":"string","example":"SITE","enum":["SPACE","SITE"]},"jobState":{"type":"string","example":"IN_PROGRESS","enum":["QUEUED","PROCESSING","COMPLETING","FINISHED","CANCELLING","CANCELLED","FAILED"]},"createTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"startProcessingTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"finishProcessingTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"cancelTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"errorMessage":{"type":"string","example":"Error message"},"owner":{"type":"string","example":"admin"},"cancelledBy":{"type":"string","example":"admin"},"fileName":{"type":"string","example":"backup-2020-01-01.zip"},"spaceKeys":{"type":"string","example":"spaceKey1,spaceKey2"},"fileDeleteTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"fileExists":{"type":"boolean","example":true},"jobSettings":{"$ref":"#/components/schemas/SpaceBackupSettings"},"statistics":{"$ref":"#/components/schemas/JobStatistics"},"jobStatistics":{"$ref":"#/components/schemas/JobStatistics"}}},"SiteBackupJobDetails":{"properties":{"id":{"type":"integer","format":"int64","example":1},"jobOperation":{"type":"string","example":"BACKUP","enum":["BACKUP","RESTORE"]},"jobScope":{"type":"string","example":"SITE","enum":["SPACE","SITE"]},"jobState":{"type":"string","example":"IN_PROGRESS","enum":["QUEUED","PROCESSING","COMPLETING","FINISHED","CANCELLING","CANCELLED","FAILED"]},"createTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"startProcessingTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"finishProcessingTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"cancelTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"errorMessage":{"type":"string","example":"Error message"},"owner":{"type":"string","example":"admin"},"cancelledBy":{"type":"string","example":"admin"},"fileName":{"type":"string","example":"backup-2020-01-01.zip"},"spaceKeys":{"type":"string","example":"spaceKey1,spaceKey2"},"fileDeleteTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"fileExists":{"type":"boolean","example":true},"jobSettings":{"$ref":"#/components/schemas/SiteBackupSettings"},"statistics":{"$ref":"#/components/schemas/JobStatistics"},"jobStatistics":{"$ref":"#/components/schemas/JobStatistics"}}},"SpaceRestoreJobDetails":{"properties":{"id":{"type":"integer","format":"int64","example":1},"jobOperation":{"type":"string","example":"BACKUP","enum":["BACKUP","RESTORE"]},"jobScope":{"type":"string","example":"SITE","enum":["SPACE","SITE"]},"jobState":{"type":"string","example":"IN_PROGRESS","enum":["QUEUED","PROCESSING","COMPLETING","FINISHED","CANCELLING","CANCELLED","FAILED"]},"createTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"startProcessingTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"finishProcessingTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"cancelTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"errorMessage":{"type":"string","example":"Error message"},"owner":{"type":"string","example":"admin"},"cancelledBy":{"type":"string","example":"admin"},"fileName":{"type":"string","example":"backup-2020-01-01.zip"},"spaceKeys":{"type":"string","example":"spaceKey1,spaceKey2"},"fileDeleteTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"fileExists":{"type":"boolean","example":true},"jobSettings":{"$ref":"#/components/schemas/SpaceRestoreSettings"},"statistics":{"$ref":"#/components/schemas/JobStatistics"},"jobStatistics":{"$ref":"#/components/schemas/JobStatistics"}}},"SiteRestoreJobDetails":{"properties":{"id":{"type":"integer","format":"int64","example":1},"jobOperation":{"type":"string","example":"BACKUP","enum":["BACKUP","RESTORE"]},"jobScope":{"type":"string","example":"SITE","enum":["SPACE","SITE"]},"jobState":{"type":"string","example":"IN_PROGRESS","enum":["QUEUED","PROCESSING","COMPLETING","FINISHED","CANCELLING","CANCELLED","FAILED"]},"createTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"startProcessingTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"finishProcessingTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"cancelTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"errorMessage":{"type":"string","example":"Error message"},"owner":{"type":"string","example":"admin"},"cancelledBy":{"type":"string","example":"admin"},"fileName":{"type":"string","example":"backup-2020-01-01.zip"},"spaceKeys":{"type":"string","example":"spaceKey1,spaceKey2"},"fileDeleteTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"fileExists":{"type":"boolean","example":true},"jobSettings":{"$ref":"#/components/schemas/SiteRestoreSettings"},"statistics":{"$ref":"#/components/schemas/JobStatistics"},"jobStatistics":{"$ref":"#/components/schemas/JobStatistics"}}},"JobDetails":{"properties":{"id":{"type":"integer","format":"int64","example":1},"jobOperation":{"type":"string","example":"BACKUP","enum":["BACKUP","RESTORE"]},"jobScope":{"type":"string","example":"SITE","enum":["SPACE","SITE"]},"jobState":{"type":"string","example":"IN_PROGRESS","enum":["QUEUED","PROCESSING","COMPLETING","FINISHED","CANCELLING","CANCELLED","FAILED"]},"createTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"startProcessingTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"finishProcessingTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"cancelTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"errorMessage":{"type":"string","example":"Error message"},"owner":{"type":"string","example":"admin"},"cancelledBy":{"type":"string","example":"admin"},"fileName":{"type":"string","example":"backup-2020-01-01.zip"},"spaceKeys":{"type":"string","example":"spaceKey1,spaceKey2"},"fileDeleteTime":{"type":"string","format":"date-time","example":"2020-01-01T01:01:01Z"},"fileExists":{"type":"boolean","example":true}}},"FileInfo":{"properties":{"name":{"type":"string","example":"backup-2020-01-01-01-01-01.zip"},"creationTime":{"type":"string","example":"2020-01-01T01:01:01.000Z"},"size":{"type":"integer","format":"int64","example":1000},"jobScope":{"type":"string","example":"SITE","enum":["SPACE","SITE"]}}},"Links":{"properties":{"self":{"type":"string","description":"Self link","example":"https://instenv-320828-cq6e.instenv.internal.atlassian.com/rest/api/content/2326529/restriction/byOperation/read"},"base":{"type":"string","description":"Base link","example":"https://instenv-320828-cq6e.instenv.internal.atlassian.com"},"context":{"type":"string","description":"Context link"}}},"PageResponseObject":{"properties":{"results":{"type":"array","description":"Results of the page response","example":[],"items":{"type":"object","description":"Results of the page response","example":[]}},"start":{"type":"integer","description":"Start index of the page response","format":"int32","example":0},"limit":{"type":"integer","description":"Limit of the page response","format":"int32","example":200},"size":{"type":"integer","description":"Size of the results","format":"int32","example":0}}},"Restrictions":{"properties":{"user":{"$ref":"#/components/schemas/PageResponseObject"},"group":{"$ref":"#/components/schemas/PageResponseObject"}}},"Expandable":{"properties":{"content":{"type":"string","description":"Content link","example":"/rest/api/content/2326529"}}},"OperationRestriction":{"properties":{"operation":{"type":"string","description":"The operation type","example":"read"},"restrictions":{"$ref":"#/components/schemas/Restrictions"},"get_links":{"$ref":"#/components/schemas/Links"},"get_expandable":{"$ref":"#/components/schemas/Expandable"}}},"MockRestrictionsResponse":{"properties":{"restrictions":{"type":"object","description":"Map of operation to OperationRestriction, representing the restrictions by operation","example":{"read":{"operation":"read","restrictions":{"user":{"results":[],"start":0,"limit":200,"size":0},"group":{"results":[],"start":0,"limit":200,"size":0}},"_links":{"self":"https://instenv-320828-cq6e.instenv.internal.atlassian.com/rest/api/content/2326529/restriction/byOperation/read"},"_expandable":{"content":"/rest/api/content/2326529"}},"update":{"operation":"update","restrictions":{"user":{"results":[],"start":0,"limit":200,"size":0},"group":{"results":[],"start":0,"limit":200,"size":0}},"_links":{"self":"https://instenv-320828-cq6e.instenv.internal.atlassian.com/rest/api/content/2326529/restriction/byOperation/update"},"_expandable":{"content":"/rest/api/content/2326529"}}}},"get_links":{"$ref":"#/components/schemas/Links"}}}}},"x-atlassian-narrative":{"documents":[{"title":"About","anchor":"about","body":"\nThe REST APIs are for developers who want to integrate Confluence into their application and for administrators who want to script interactions with the Confluence server.\nThis page documents the REST resources available in Confluence, including the HTTP methods, example request and responses and error codes and messages.\n\nBecause the REST API is based on open standards, you can use any web development language to access the API.\n\n
\n
= | \n!= | \n~ | \n!~ | \n> | \n>= | \n< | \n<= | \nIN | \nNOT IN | \n
---|---|---|---|---|---|---|---|---|---|
Yes | \nYes | \nNo | \nNo | \nNo | \nNo | \nNo | \nNo | \nYes | \nYes | \n
= | \n!= | \n~ | \n!~ | \n> | \n>= | \n< | \n<= | \nIN | \nNOT IN | \n
---|---|---|---|---|---|---|---|---|---|
Yes | \nYes | \nNo | \nNo | \nNo | \nNo | \nNo | \nNo | \nYes | \nYes | \n
= | \n!= | \n~ | \n!~ | \n> | \n>= | \n< | \n<= | \nIN | \nNOT IN | \n
---|---|---|---|---|---|---|---|---|---|
Yes | \nYes | \nNo | \nNo | \nNo | \nNo | \nNo | \nNo | \nYes | \nYes | \n
= | \n!= | \n~ | \n!~ | \n> | \n>= | \n< | \n<= | \nIN | \nNOT IN | \n
---|---|---|---|---|---|---|---|---|---|
Yes | \nYes | \nNo | \nNo | \nYes | \nYes | \nYes | \nYes | \nNo | \nNo | \n
= | \n!= | \n~ | \n!~ | \n> | \n>= | \n< | \n<= | \nIN | \nNOT IN | \n
---|---|---|---|---|---|---|---|---|---|
Yes | \nYes | \nNo | \nNo | \nNo | \nNo | \nNo | \nNo | \nYes | \nYes | \n
= | \n!= | \n~ | \n!~ | \n> | \n>= | \n< | \n<= | \nIN | \nNOT IN | \n
---|---|---|---|---|---|---|---|---|---|
Yes | \nYes | \nNo | \nNo | \nNo | \nNo | \nNo | \nNo | \nYes | \nYes | \n
= | \n!= | \n~ | \n!~ | \n> | \n>= | \n< | \n<= | \nIN | \nNOT IN | \n
---|---|---|---|---|---|---|---|---|---|
Yes | \nYes | \nNo | \nNo | \nNo | \nNo | \nNo | \nNo | \nYes | \nYes | \n
= | \n!= | \n~ | \n!~ | \n> | \n>= | \n< | \n<= | \nIN | \nNOT IN | \n
---|---|---|---|---|---|---|---|---|---|
Yes | \nYes | \nNo | \nNo | \nNo | \nNo | \nNo | \nNo | \nYes | \nYes | \n
= | \n!= | \n~ | \n!~ | \n> | \n>= | \n< | \n<= | \nIN | \nNOT IN | \n
---|---|---|---|---|---|---|---|---|---|
Yes | \nYes | \nNo | \nNo | \nNo | \nNo | \nNo | \nNo | \nYes | \nYes | \n
= | \n!= | \n~ | \n!~ | \n> | \n>= | \n< | \n<= | \nIN | \nNOT IN | \n
---|---|---|---|---|---|---|---|---|---|
Yes | \nYes | \nNo | \nNo | \nYes | \nYes | \nYes | \nYes | \nNo | \nNo | \n
= | \n!= | \n~ | \n!~ | \n> | \n>= | \n< | \n<= | \nIN | \nNOT IN | \n
---|---|---|---|---|---|---|---|---|---|
Yes | \nYes | \nNo | \nNo | \nNo | \nNo | \nNo | \nNo | \nYes | \nYes | \n
= | \n!= | \n~ | \n!~ | \n> | \n>= | \n< | \n<= | \nIN | \nNOT IN | \n
---|---|---|---|---|---|---|---|---|---|
Yes | \nYes | \nNo | \nNo | \nNo | \nNo | \nNo | \nNo | \nYes | \nYes | \n
= | \n!= | \n~ | \n!~ | \n> | \n>= | \n< | \n<= | \nIN | \nNOT IN | \n
---|---|---|---|---|---|---|---|---|---|
Yes | \nYes | \nNo | \nNo | \nNo | \nNo | \nNo | \nNo | \nYes | \nYes | \n
= | \n!= | \n~ | \n!~ | \n> | \n>= | \n< | \n<= | \nIN | \nNOT IN | \n
---|---|---|---|---|---|---|---|---|---|
Yes | \nYes | \nNo | \nNo | \nNo | \nNo | \nNo | \nNo | \nYes | \nYes | \n
= | \n!= | \n~ | \n!~ | \n> | \n>= | \n< | \n<= | \nIN | \nNOT IN | \n
---|---|---|---|---|---|---|---|---|---|
Yes | \nYes | \nNo | \nNo | \nNo | \nNo | \nNo | \nNo | \nYes | \nYes | \n
= | \n!= | \n~ | \n!~ | \n> | \n>= | \n< | \n<= | \nIN | \nNOT IN | \n
---|---|---|---|---|---|---|---|---|---|
Yes | \nYes | \nNo | \nNo | \nNo | \nNo | \nNo | \nNo | \nYes | \nYes | \n
= | \n!= | \n~ | \n!~ | \n> | \n>= | \n< | \n<= | \nIN | \nNOT IN | \n
---|---|---|---|---|---|---|---|---|---|
No | \nNo | \nYes | \nYes | \nNo | \nNo | \nNo | \nNo | \nNo | \nNo | \n
= | \n!= | \n~ | \n!~ | \n> | \n>= | \n< | \n<= | \nIN | \nNOT IN | \n
---|---|---|---|---|---|---|---|---|---|
Yes | \nYes | \nNo | \nNo | \nNo | \nNo | \nNo | \nNo | \nYes | \nYes | \n
= | \n!= | \n~ | \n!~ | \n> | \n>= | \n< | \n<= | \nIN | \nNOT IN | \n
---|---|---|---|---|---|---|---|---|---|
No | \nNo | \nYes | \nYes | \nNo | \nNo | \nNo | \nNo | \nNo | \nNo | \n
= | \n!= | \n~ | \n!~ | \n> | \n>= | \n< | \n<= | \nIN | \nNOT IN | \n
---|---|---|---|---|---|---|---|---|---|
Yes | \nYes | \nYes | \nYes | \nNo | \nNo | \nNo | \nNo | \nYes | \nYes | \n
= | \n!= | \n~ | \n!~ | \n> | \n>= | \n< | \n<= | \nIN | \nNOT IN | \n
---|---|---|---|---|---|---|---|---|---|
Yes | \nYes | \nNo | \nNo | \nNo | \nNo | \nNo | \nNo | \nYes | \nYes | \n
= | \n!= | \n~ | \n!~ | \n> | \n>= | \n< | \n<= | \nIN | \nNOT IN | \n
---|---|---|---|---|---|---|---|---|---|
Yes | \nYes | \nNo | \nNo | \nNo | \nNo | \nNo | \nNo | \nYes | \nYes | \n
blah blah
\"\n },\n \"view\": {\n \"_expandable\": {\n \"content\": \"/rest/api/content/3965072\"\n },\n \"representation\": \"view\"\n }\n },\n \"id\": \"3965072\",\n \"title\": \"Test Page\",\n \"type\": \"page\"\n}\n```\n\n## Find pages or blogs \n\n### Find pages by space key (Confluence 7.18 or later)\n\nThis example shows how you can find pages in Confluence 7.18 and later. The `scan` endpoint provides better performance, but can only be used to browse pages (not blogs), and doesn't support `offset`, `title`, or `creationdate` parameters.\n\nThis example shows how you can find a page by space key, with history expanded to find the creator.\n\n``` bash\ncurl -u admin:admin http://localhost:8080/confluence/rest/api/content/scan?spaceKey=FS&limit=2&expand=history | python -mjson.tool\n```\n\nExample result:\n\n``` javascript\n{\n \"results\": [\n {\n \"id\": \"393219\",\n \"type\": \"page\",\n \"status\": \"current\",\n \"title\": \"First space\",\n \"history\": {\n \"latest\": true,\n \"createdBy\": {\n \"type\": \"anonymous\",\n \"profilePicture\": {\n \"path\": \"/confluence/s/-ze4av5/8804/0/_/images/icons/profilepics/anonymous.svg\",\n \"width\": 48,\n \"height\": 48,\n \"isDefault\": true\n },\n \"displayName\": \"Anonymous\"\n },\n \"createdDate\": \"2022-04-27T07:15:13.012+10:00\",\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/content/393219/history\"\n },\n \"_expandable\": {\n \"lastUpdated\": \"\",\n \"previousVersion\": \"\",\n \"contributors\": \"\",\n \"nextVersion\": \"\"\n }\n },\n \"extensions\": {\n \"position\": 0\n },\n \"_links\": {\n \"webui\": \"/display/FS/First+space\",\n \"edit\": \"/pages/resumedraft.action?draftId=393219\",\n \"tinyui\": \"/x/AwAG\",\n \"self\": \"http://localhost:8080/confluence/rest/api/content/393219\"\n },\n \"_expandable\": {\n \"container\": \"/rest/api/space/FS\",\n \"metadata\": \"\",\n \"operations\": \"\",\n \"children\": \"/rest/api/content/393219/child\",\n \"restrictions\": \"/rest/api/content/393219/restriction/byOperation\",\n \"ancestors\": \"\",\n \"body\": \"\",\n \"version\": \"\",\n \"descendants\": \"/rest/api/content/393219/descendant\",\n \"space\": \"/rest/api/space/FS\"\n }\n },\n {\n \"id\": \"393229\",\n \"type\": \"page\",\n \"status\": \"current\",\n \"title\": \"Page 1\",\n \"history\": {\n \"latest\": true,\n \"createdBy\": {\n \"type\": \"known\",\n \"username\": \"admin\",\n \"userKey\": \"2c9d802a8067b72f018067b876420000\",\n \"profilePicture\": {\n \"path\": \"/confluence/images/icons/profilepics/default.svg\",\n \"width\": 48,\n \"height\": 48,\n \"isDefault\": true\n },\n \"displayName\": \"admin\",\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/user?key=2c9d802a8067b72f018067b876420000\"\n },\n \"_expandable\": {\n \"status\": \"\"\n }\n },\n \"createdDate\": \"2022-04-27T07:15:18.097+10:00\",\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/content/393229/history\"\n },\n \"_expandable\": {\n \"lastUpdated\": \"\",\n \"previousVersion\": \"\",\n \"contributors\": \"\",\n \"nextVersion\": \"\"\n }\n },\n \"extensions\": {\n \"position\": 0\n },\n \"_links\": {\n \"webui\": \"/display/FS/Page+1\",\n \"edit\": \"/pages/resumedraft.action?draftId=393229&draftShareId=f16d9e64-9373-4719-9df5-aec8102e5252\",\n \"tinyui\": \"/x/DQAG\",\n \"self\": \"http://localhost:8080/confluence/rest/api/content/393229\"\n },\n \"_expandable\": {\n \"container\": \"/rest/api/space/FS\",\n \"metadata\": \"\",\n \"operations\": \"\",\n \"children\": \"/rest/api/content/393229/child\",\n \"restrictions\": \"/rest/api/content/393229/restriction/byOperation\",\n \"ancestors\": \"\",\n \"body\": \"\",\n \"version\": \"\",\n \"descendants\": \"/rest/api/content/393229/descendant\",\n \"space\": \"/rest/api/space/FS\"\n }\n }\n ],\n \"cursor\": \"content:false:null\",\n \"nextCursor\": \"content:false:393229\",\n \"limit\": 2,\n \"size\": 2,\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/content/scan?spaceKey=FS&expand=history\",\n \"next\": \"/rest/api/content/scan?spaceKey=FS&cursor=content:false:393229&expand=history&limit=2\",\n \"base\": \"http://localhost:8080/confluence\",\n \"context\": \"/confluence\"\n }\n}\n```\n\n### Find a page by title and space key\n\nThis example shows how you can find a page by space key and title with history [expanded](/server/confluence/expansions-in-the-rest-api) to find the creator.\n\n``` bash\ncurl -u admin:admin -X GET \"http://localhost:8080/confluence/rest/api/content?title=myPage%20Title\n&spaceKey=TST&expand=history\" | python -mjson.tool\n```\n\nExample result: \n\n``` javascript\n{\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/content\"\n },\n \"limit\": 100,\n \"results\": [\n {\n \"_expandable\": {\n \"ancestors\": \"\",\n \"body\": \"\",\n \"children\": \"/rest/api/content/950276/child\",\n \"container\": \"\",\n \"descendants\": \"/rest/api/content/950276/descendant\",\n \"metadata\": \"\",\n \"space\": \"/rest/api/space/TST\",\n \"version\": \"\"\n },\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/content/950276\",\n \"tinyui\": \"/x/BIAO\",\n \"webui\": \"/display/TST/myPage+Title\"\n },\n \"history\": {\n \"_expandable\": {\n \"lastUpdated\": \"\"\n },\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/content/950276/history\"\n },\n \"createdBy\": {\n \"displayName\": \"A. D. Ministrator\",\n \"profilePicture\": {\n \"height\": 48,\n \"isDefault\": true,\n \"path\": \"/confluence/s/en_GB-1988229788/4960/NOCACHE1/_/images/icons/profilepics/default.png\",\n \"width\": 48\n },\n \"type\": \"known\",\n \"username\": \"admin\"\n },\n \"createdDate\": \"2014-03-07T17:08:20.326+1100\",\n \"latest\": true\n },\n \"id\": \"950276\",\n \"title\": \"myPage Title\",\n \"type\": \"page\"\n }\n ],\n \"size\": 1,\n \"start\": 0\n}\n```\n\n### Find blog posts\n\nThis example finds blog posts to display in a blog roll with labels.\n\n``` bash\ncurl -u admin:admin -X GET \"http://localhost:8080/confluence/rest/api/content?type=blogpost&start=0\n&limit=10&expand=space,history,body.view,metadata.labels\" | python -mjson.tool\n```\n\nExample result:\n\n``` javascript\n{\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/content\"\n },\n \"limit\": 10,\n \"results\": [\n {\n \"_expandable\": {\n \"ancestors\": \"\",\n \"children\": \"/rest/api/content/557065/child\",\n \"container\": \"\",\n \"descendants\": \"/rest/api/content/557065/descendant\",\n \"version\": \"\"\n },\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/content/557065\",\n \"tinyui\": \"/x/CYAI\",\n \"webui\": \"/display/TST/Test+Space+Home\"\n },\n \"body\": {\n \"editor\": {\n \"_expandable\": {\n \"content\": \"/rest/api/content/557065\"\n },\n \"representation\": \"editor\"\n },\n \"export_view\": {\n \"_expandable\": {\n \"content\": \"/rest/api/content/557065\"\n },\n \"representation\": \"export_view\"\n },\n \"storage\": {\n \"_expandable\": {\n \"content\": \"/rest/api/content/557065\"\n },\n \"representation\": \"storage\"\n },\n \"view\": {\n \"_expandable\": {\n \"content\": \"/rest/api/content/557065\"\n },\n \"representation\": \"view\",\n \"value\": \"Example page
\"\n }\n },\n \"history\": {\n \"_expandable\": {\n \"lastUpdated\": \"\"\n },\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/content/557065/history\"\n },\n \"createdBy\": {\n \"displayName\": \"A. D. Ministrator\",\n \"profilePicture\": {\n \"height\": 48,\n \"isDefault\": true,\n \"path\": \"/confluence/s/en_GB-1988229788/4960/NOCACHE1/_/images/icons/profilepics/default.png\",\n \"width\": 48\n },\n \"type\": \"known\",\n \"username\": \"admin\"\n },\n \"createdDate\": \"2014-03-07T16:14:35.220+1100\",\n \"latest\": true\n },\n \"id\": \"557065\",\n \"metadata\": {\n \"labels\": {\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/content/557065/label\"\n },\n \"limit\": 200,\n \"results\": [],\n \"size\": 0,\n \"start\": 0\n },\n \"likesCount\": null\n },\n \"space\": {\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/space/TST\"\n },\n \"id\": 786433,\n \"key\": \"TST\",\n \"name\": \"Test Space\"\n },\n \"title\": \"Test Space Home\",\n \"type\": \"page\"\n },\n {\n \"_expandable\": {\n \"ancestors\": \"\",\n \"children\": \"/rest/api/content/557067/child\",\n \"container\": \"\",\n \"descendants\": \"/rest/api/content/557067/descendant\",\n \"version\": \"\"\n },\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/content/557067\",\n \"tinyui\": \"/x/C4AI\",\n \"webui\": \"/display/TST/A+new+page\"\n },\n \"body\": {\n \"editor\": {\n \"_expandable\": {\n \"content\": \"/rest/api/content/557067\"\n },\n \"representation\": \"editor\"\n },\n \"export_view\": {\n \"_expandable\": {\n \"content\": \"/rest/api/content/557067\"\n },\n \"representation\": \"export_view\"\n },\n \"storage\": {\n \"_expandable\": {\n \"content\": \"/rest/api/content/557067\"\n },\n \"representation\": \"storage\"\n },\n \"view\": {\n \"_expandable\": {\n \"content\": \"/rest/api/content/557067\"\n },\n \"representation\": \"view\",\n \"value\": \"\"\n }\n },\n \"history\": {\n \"_expandable\": {\n \"lastUpdated\": \"\"\n },\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/content/557067/history\"\n },\n \"createdBy\": {\n \"displayName\": \"A. D. Ministrator\",\n \"profilePicture\": {\n \"height\": 48,\n \"isDefault\": true,\n \"path\": \"/confluence/s/en_GB-1988229788/4960/NOCACHE1/_/images/icons/profilepics/default.png\",\n \"width\": 48\n },\n \"type\": \"known\",\n \"username\": \"admin\"\n },\n \"createdDate\": \"2014-03-07T16:18:33.554+1100\",\n \"latest\": true\n },\n \"id\": \"557067\",\n \"metadata\": {\n \"labels\": {\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/content/557067/label\"\n },\n \"limit\": 200,\n \"results\": [],\n \"size\": 0,\n \"start\": 0\n },\n \"likesCount\": null\n },\n \"space\": {\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/space/TST\"\n },\n \"id\": 786433,\n \"key\": \"TST\",\n \"name\": \"Test Space\"\n },\n \"title\": \"A new page\",\n \"type\": \"page\"\n },\n {\n \"_expandable\": {\n \"ancestors\": \"\",\n \"children\": \"/rest/api/content/950276/child\",\n \"container\": \"\",\n \"descendants\": \"/rest/api/content/950276/descendant\",\n \"version\": \"\"\n },\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/content/950276\",\n \"tinyui\": \"/x/BIAO\",\n \"webui\": \"/display/TST/myPage+Title\"\n },\n \"body\": {\n \"editor\": {\n \"_expandable\": {\n \"content\": \"/rest/api/content/950276\"\n },\n \"representation\": \"editor\"\n },\n \"export_view\": {\n \"_expandable\": {\n \"content\": \"/rest/api/content/950276\"\n },\n \"representation\": \"export_view\"\n },\n \"storage\": {\n \"_expandable\": {\n \"content\": \"/rest/api/content/950276\"\n },\n \"representation\": \"storage\"\n },\n \"view\": {\n \"_expandable\": {\n \"content\": \"/rest/api/content/950276\"\n },\n \"representation\": \"view\",\n \"value\": \"Some content
\"\n }\n },\n \"history\": {\n \"_expandable\": {\n \"lastUpdated\": \"\"\n },\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/content/950276/history\"\n },\n \"createdBy\": {\n \"displayName\": \"A. D. Ministrator\",\n \"profilePicture\": {\n \"height\": 48,\n \"isDefault\": true,\n \"path\": \"/confluence/s/en_GB-1988229788/4960/NOCACHE1/_/images/icons/profilepics/default.png\",\n \"width\": 48\n },\n \"type\": \"known\",\n \"username\": \"admin\"\n },\n \"createdDate\": \"2014-03-07T17:08:20.326+1100\",\n \"latest\": true\n },\n \"id\": \"950276\",\n \"metadata\": {\n \"labels\": {\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/content/950276/label\"\n },\n \"limit\": 200,\n \"results\": [],\n \"size\": 0,\n \"start\": 0\n },\n \"likesCount\": null\n },\n \"space\": {\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/space/TST\"\n },\n \"id\": 786433,\n \"key\": \"TST\",\n \"name\": \"Test Space\"\n },\n \"title\": \"myPage Title\",\n \"type\": \"page\"\n }\n ],\n \"size\": 3,\n \"start\": 0\n}\n```\n\n## Create a new page\n\nThis example shows how you can create a new page with content in a specific space. \n\n``` bash\ncurl -u admin:admin -X POST -H 'Content-Type: application/json' -d '{\"type\":\"page\",\"title\":\"new page\",\n\"space\":{\"key\":\"TST\"},\"body\":{\"storage\":{\"value\":\"This is
a new page
This is a new page
\"\n },\n \"view\": {\n \"_expandable\": {\n \"content\": \"/rest/api/content/3604482\"\n },\n \"representation\": \"view\"\n }\n },\n \"container\": {\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/space/TST\"\n },\n \"id\": 2719747,\n \"key\": \"TST\",\n \"name\": \"Test Space\"\n },\n \"history\": {\n \"_expandable\": {\n \"lastUpdated\": \"\"\n },\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/content/3604482/history\"\n },\n \"createdBy\": {\n \"displayName\": \"A. D. Ministrator\",\n \"profilePicture\": {\n \"height\": 48,\n \"isDefault\": true,\n \"path\": \"/confluence/s/en_GB-1988229788/4960/NOCACHE1/_/images/icons/profilepics/default.png\",\n \"width\": 48\n },\n \"type\": \"known\",\n \"username\": \"admin\"\n },\n \"createdDate\": \"2014-03-10T23:14:35.031+1100\",\n \"latest\": true\n },\n \"id\": \"3604482\",\n \"space\": {\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/space/TST\"\n },\n \"id\": 2719747,\n \"key\": \"TST\",\n \"name\": \"Test Space\"\n },\n \"title\": \"new page\",\n \"type\": \"page\",\n \"version\": {\n \"by\": {\n \"displayName\": \"A. D. Ministrator\",\n \"profilePicture\": {\n \"height\": 48,\n \"isDefault\": true,\n \"path\": \"/confluence/s/en_GB-1988229788/4960/NOCACHE1/_/images/icons/profilepics/default.png\",\n \"width\": 48\n },\n \"type\": \"known\",\n \"username\": \"admin\"\n },\n \"message\": \"\",\n \"minorEdit\": false,\n \"number\": 1,\n \"when\": \"2014-03-10T23:14:35.031+1100\"\n }\n}\n```\n\n## Create a new page (jQuery)\n\n``` javascript\n//This creates a page in a space.\nvar username = \"admin\";\nvar password = \"admin\";\nvar jsondata = {\"type\":\"page\",\n \"title\":\"My Test Page\",\n \"space\":{\"key\":\"TST\"},\n \"body\":{\"storage\":{\"value\":\"This is a new page
\",\"representation\":\"storage\"}}};\n\n$.ajax\n ({\n type: \"POST\",\n url: \"http://localhost:8080/confluence/rest/api/content/\",\n contentType:\"application/json; charset=utf-8\",\n dataType: \"json\",\n async: false,\n headers: {\n \"Authorization\": \"Basic \" + btoa(username+ \":\" + password)\n },\n data: JSON.stringify(jsondata),\n success: function (){\n console.log('Page saved!');\n },\n error : function(xhr, errorText){\n console.log('Error '+ xhr.responseText);\n }\n});\n```\n\n## Create a new page as a child of another page\n\nThis example shows how you can create a new page, with content, as a child of another page with ID 456\n\n``` bash\ncurl -u admin:admin -X POST -H 'Content-Type: application/json' -d '{\"type\":\"page\",\"title\":\"new page\",\n\"ancestors\":[{\"id\":456}], \"space\":{\"key\":\"TST\"},\"body\":{\"storage\":{\"value\":\n\"This is a new page
\",\"representation\":\"storage\"}}}'\nhttp://localhost:8080/confluence/rest/api/content/ | python -mjson.tool\n```\n\n## Update a page\n\nThis example shows how you can update the content of an existing page. \n\n``` bash\ncurl -u admin:admin -X PUT -H 'Content-Type: application/json' -d '{\"id\":\"3604482\",\"type\":\"page\",\n\"title\":\"new page\",\"space\":{\"key\":\"TST\"},\"body\":{\"storage\":{\"value\":\n\"This is the updated text for the new page
\",\"representation\":\"storage\"}},\n\"version\":{\"number\":2}}' http://localhost:8080/confluence/rest/api/content/3604482 | python -mjson.tool\n```\n\nExample result:\n\n``` javascript\n{\n \"_expandable\": {\n \"children\": \"/rest/api/content/3604482/child\",\n \"descendants\": \"/rest/api/content/3604482/descendant\",\n \"metadata\": \"\"\n },\n \"_links\": {\n \"base\": \"http://localhost:8080/confluence\",\n \"collection\": \"/rest/api/contents\",\n \"self\": \"http://localhost:8080/confluence/rest/api/content/3604482\",\n \"tinyui\": \"/x/AgA3\",\n \"webui\": \"/display/TST/new+page\"\n },\n \"ancestors\": [],\n \"body\": {\n \"editor\": {\n \"_expandable\": {\n \"content\": \"/rest/api/content/3604482\"\n },\n \"representation\": \"editor\"\n },\n \"export_view\": {\n \"_expandable\": {\n \"content\": \"/rest/api/content/3604482\"\n },\n \"representation\": \"export_view\"\n },\n \"storage\": {\n \"_expandable\": {\n \"content\": \"/rest/api/content/3604482\"\n },\n \"representation\": \"storage\",\n \"value\": \"This is the updated text for the new page
\"\n },\n \"view\": {\n \"_expandable\": {\n \"content\": \"/rest/api/content/3604482\"\n },\n \"representation\": \"view\"\n }\n },\n \"container\": {\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/space/TST\"\n },\n \"id\": 2719747,\n \"key\": \"TST\",\n \"name\": \"Test Space\"\n },\n \"history\": {\n \"_expandable\": {\n \"lastUpdated\": \"\",\n \"previousVersion\": \"\"\n },\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/content/3604482/history\"\n },\n \"createdBy\": {\n \"displayName\": \"A. D. Ministrator\",\n \"profilePicture\": {\n \"height\": 48,\n \"isDefault\": true,\n \"path\": \"/confluence/s/en_GB-1988229788/4960/NOCACHE1/_/images/icons/profilepics/default.png\",\n \"width\": 48\n },\n \"type\": \"known\",\n \"username\": \"admin\"\n },\n \"createdDate\": \"2014-03-10T23:14:35.031+1100\",\n \"latest\": true\n },\n \"id\": \"3604482\",\n \"space\": {\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/space/TST\"\n },\n \"id\": 2719747,\n \"key\": \"TST\",\n \"name\": \"Test Space\"\n },\n \"title\": \"new page\",\n \"type\": \"page\",\n \"version\": {\n \"by\": {\n \"displayName\": \"A. D. Ministrator\",\n \"profilePicture\": {\n \"height\": 48,\n \"isDefault\": true,\n \"path\": \"/confluence/s/en_GB-1988229788/4960/NOCACHE1/_/images/icons/profilepics/default.png\",\n \"width\": 48\n },\n \"type\": \"known\",\n \"username\": \"admin\"\n },\n \"minorEdit\": false,\n \"number\": 2,\n \"when\": \"2014-03-10T23:16:50.757+1100\"\n }\n}\n```\n\n## Delete a page\n\nThis example shows how you can delete a page by content ID.\n\n``` bash\ncurl -v -S -u admin:admin -X DELETE http://localhost:8080/confluence/rest/api/content/3604482 | python -mjson.tool\n```\n\nExpect a `HTTP/1.1 204 No Content` response after a successful deletion.\n\n## Upload an attachment\n\nThis example shows how you can upload an attachment to a specific page (where `3604482` is the content ID), and add a comment.\n\n``` bash\ncurl -v -S -u admin:admin -X POST -H \"X-Atlassian-Token: no-check\" -F \"file=@myfile.txt\" -F\n\"comment=this is my file\" \"http://localhost:8080/confluence/rest/api/content/3604482/child/attachment\"\n| python -mjson.tool\n```\n\n``` javascript\n{\n \"_expandable\": {\n \"icon\": \"\"\n },\n \"_links\": {\n \"base\": \"http://localhost:8080/confluence\",\n \"collection\": \"/rest/api/space\",\n \"context\": \"/confluence\",\n \"self\": \"http://localhost:8080/confluence/rest/api/space/RAID4\"\n },\n \"description\": {\n \"_expandable\": {\n \"view\": \"\"\n },\n \"plain\": {\n \"representation\": \"plain\",\n \"value\": \"Raider Space for raiders\"\n }\n },\n \"homepage\": {\n \"_expandable\": {\n \"ancestors\": \"\",\n \"body\": \"\",\n \"children\": \"/rest/api/content/3997704/child\",\n \"container\": \"\",\n \"descendants\": \"/rest/api/content/3997704/descendant\",\n \"history\": \"/rest/api/content/3997704/history\",\n \"metadata\": \"\",\n \"space\": \"/rest/api/space/RAID4\",\n \"version\": \"\"\n },\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/content/3997704\",\n \"tinyui\": \"/x/CAA9\",\n \"webui\": \"/display/RAID4/Raider+Home\"\n },\n \"id\": \"3997704\",\n \"title\": \"Raider Home\",\n \"type\": \"page\"\n },\n \"id\": 4030468,\n \"key\": \"RAID\",\n \"name\": \"Raider\",\n \"type\": \"global\"\n}\n```\n\n## Download an attachment\n\nThis example shows how you can download an attachment from a specific page (where `1998856` is the content ID).\n\n``` bash\ncurl -u admin:admin \"http://localhost:8080/confluence/rest/api/content/1998856/child/attachment\" | python -m json.tool\n```\n\nThe download link is inside output:\n\n``` javascript\n\"_links\": {\n \"download\": \"/download/attachments/1998856/test.txt?version=1&modificationDate=1519985997040&api=v2\",\n \"self\": \"http://localhost:8080/confluence/rest/api/content/att1998865\",\n \"webui\":\"/display/dsada/new4+page?preview=%2F1998856%2F1998865%2Ftest.txt\"\n}\n```\n\n## Get comments from a page\n\n``` bash\ncurl -u admin:admin \"http://localhost:8080/confluence/rest/api/content/1998856/child/comment?expand=body.view&depth=all\" | python -m json.tool\n```\n\n``` javascript\n{\n \"_links\": {\n \"base\": \"http://localhost:8080/confluence\",\n \"context\": \"/confluence\",\n \"self\": \"http://localhost:8080/confluence/rest/api/content/1998856/child/comment?expand=body.view\"\n },\n \"limit\": 25,\n \"results\": [\n {\n \"_expandable\": {\n \"ancestors\": \"\",\n \"children\": \"/rest/api/content/1998866/child\",\n \"container\": \"/rest/api/content/1998856\",\n \"descendants\": \"/rest/api/content/1998866/descendant\",\n \"history\": \"/rest/api/content/1998866/history\",\n \"metadata\": \"\",\n \"operations\": \"\",\n \"restrictions\": \"/rest/api/content/1998866/restriction/byOperation\",\n \"space\": \"/rest/api/space/dsada\",\n \"version\": \"\"\n },\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/content/1998866\",\n \"webui\": \"/display/dsada/new4+page?focusedCommentId=1998866#comment-1998866\"\n },\n \"body\": {\n \"_expandable\": {\n \"anonymous_export_view\": \"\",\n \"editor\": \"\",\n \"export_view\": \"\",\n \"storage\": \"\",\n \"styled_view\": \"\"\n },\n \"view\": {\n \"_expandable\": {\n \"content\": \"/rest/api/content/1998866\",\n \"webresource\": \"\"\n },\n \"representation\": \"storage\",\n \"value\": \"I am a comment
\"\n }\n },\n \"extensions\": {\n \"_expandable\": {\n \"resolution\": \"\"\n },\n \"location\": \"footer\"\n },\n \"id\": \"1998866\",\n \"status\": \"current\",\n \"title\": \"Re: new4 page\",\n \"type\": \"comment\"\n }\n ],\n \"size\": 1,\n \"start\": 0\n}\n```\n\n## Add a comment to a page (Python)\n\nThis Python example shows how you can add a comment to a page. First, the page for commenting is fetched from API by title, and then used as the container of the comment.\n\n**comment.py**\n\n``` py\nimport requests, json\ndef printResponse(r):\n print '{} {}\\n'.format(json.dumps(r.json(), sort_keys=True, indent=4, separators=(',', ': ')), r)\nr = requests.get('http://localhost:8080/confluence/rest/api/content',\n params={'title' : 'Page title to comment on'},\n auth=('admin', 'admin'))\nprintResponse(r)\nparentPage = r.json()['results'][0]\npageData = {'type':'comment', 'container':parentPage,\n 'body':{'storage':{'value':\"A new comment
\",'representation':'storage'}}}\nr = requests.post('http://localhost:8080/confluence/rest/api/content',\n data=json.dumps(pageData),\n auth=('admin','admin'),\n headers=({'Content-Type':'application/json'}))\nprintResponse(r)\n```\n\n## Create a page with a task \n\nThis examples is similar to creating a page but you need to use the following JSON body, see [Confluence Storage Format](https://confluence.atlassian.com/display/DOC/Confluence+Storage+Format) documenation for other storage format markup that you can use.\n\n``` javascript\nPOST /rest/api/content :\n\n{\n \"type\":\"page\",\n \"title\":\"Another planning specs with username\",\n \"body\":{ \"storage\":{\"value\":\n \"Extraction definition for a P2 plugin | \nExtracted value | \n
---|---|
<extract path="id" type="string" /> | \n"507f1f77bcf86cd799439011" | \n
<extract path="editDate" type="date" /> | \n1st of Jan 2000 00:00:00.000 UTC | \n
<extract path="content.tags" type="string" /> | \nAn array containing "cql" , "confluence" | \n
<extract path="content.likes" type="number" /> | \n5 | \n
Type | \nDescription | \nSupported CQL operators | \n
---|---|---|
string | \nEntire extracted value will be indexed as a single token, without any filtering. When extraction expression evaluates to a JSON array, each element will be indexed separately. Enables searching for an exact value, e.g. unique identifier. | \nIN , NOT IN , = , != | \n
text | \nExtracted value will be tokenized before indexing, allowing searching for a particular words. | \n~ , !~ | \n
number | \nExtracted number will be indexed as a double value for efficient range filtering. | \n\n< , <= , = , != , > , >= \n | \n
date | \nTwo representation are possible, either a String following the ISO 8601 datetime format, or a long value in the Unix time. Enables efficient range filtering.\n | \n< , <= , = , != , > , >= \n | \n
Symbol | \nMeaning | \n
---|---|
KEY | \nThe key of the content properties you search. | \n
PATH | \nThe path to the value you'd like to search in the JSON document (use dot notation for embedded fields). | \n
OPERATOR | \nOne of the supported CQL operators for the field type. | \n
Custom content type | \nContent id | \nWhat is added to content body field | \n
---|---|---|
com.company.product.plugins.pluginName:customType | \n123456789 | \n\"This text will be added to the content body field\" | \n
myCustomType | \n987654321 | \n\"{\n \"description\": \"The whole json value be added to the content body field\",\n \"content\": {\n \"likes\": 5,\n \"tags\": [\"cql\", \"confluence\"]\n }\n}\" | \n
Method | \n\n |
---|---|
createAndPinIndexPage | \nCreates an index page if required for this blueprint, and pins it to the Space Sidebar. | \n
Method | \n\n |
---|---|
setBlueprintCreatedByUser | \nFlags that a Blueprint of a certain type has been created by a given user | \n
Component Key | \nMethods | \n
---|---|
createIndexPageObject | \nCreates an index page object given a plugin template and a render context. | \n
| \nCreates an unsaved content page object for a create-Blueprint-page request. | \n
Confluence spaces are great for sharing content and news with your team. This is your home page. Right now it shows recent space activity, but you can customize this page in anyway you like.
\\n
\\n
\\n
This is the newly updated text for my page
\",\"representation\":\"storage\"}},\"version\":{\"number\":5}}' http://localhost:8080/confluence/rest/api/content/589828 | python -mjson.tool\n```\n\n*Note that Confluence pages and blog posts are versioned, so you need to add the version number in your call.*\n\n``` javascript\n{\n \"_expandable\": {\n \"children\": \"/rest/api/content/589828/child\",\n \"descendants\": \"/rest/api/content/589828/descendant\",\n \"metadata\": \"\"\n },\n \"_links\": {\n \"base\": \"http://localhost:8080/confluence\",\n \"collection\": \"/rest/api/content\",\n \"context\": \"\",\n \"self\": \"http://localhost:8080/confluence/rest/api/content/589828\",\n \"tinyui\": \"/x/BAAJ\",\n \"webui\": \"/display/TEST/Test+Space+Home\"\n },\n \"ancestors\": [],\n \"body\": {\n \"_expandable\": {\n \"anonymous_export_view\": \"\",\n \"editor\": \"\",\n \"export_view\": \"\",\n \"view\": \"\"\n },\n \"storage\": {\n \"_expandable\": {\n \"content\": \"/rest/api/content/589828\"\n },\n \"representation\": \"storage\",\n \"value\": \"This is the newly updated text for my page
\"\n }\n },\n \"container\": {\n \"_expandable\": {\n \"description\": \"\",\n \"homepage\": \"/rest/api/content/589828\",\n \"icon\": \"\"\n },\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/space/TEST\"\n },\n \"id\": 753665,\n \"key\": \"TEST\",\n \"name\": \"Test Space\",\n \"type\": \"global\"\n },\n \"history\": {\n \"_expandable\": {\n \"lastUpdated\": \"\",\n \"nextVersion\": \"\",\n \"previousVersion\": \"\"\n },\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/content/589828/history\"\n },\n \"createdBy\": {\n \"displayName\": \"Gil Admin\",\n \"profilePicture\": {\n \"height\": 48,\n \"isDefault\": true,\n \"path\": \"/s/en_GB/5723/dfa6f4056bde4993312ffa3cb0f626ca41e68821.1/_/images/icons/profilepics/default.png\",\n \"width\": 48\n },\n \"type\": \"known\",\n \"userKey\": \"2c968271494ecbb701494ecc80dd0002\",\n \"username\": \"admin\"\n },\n \"createdDate\": \"2014-10-27T11:57:01.915+1100\",\n \"latest\": true\n },\n \"id\": \"589828\",\n \"space\": {\n \"_expandable\": {\n \"description\": \"\",\n \"homepage\": \"/rest/api/content/589828\",\n \"icon\": \"\"\n },\n \"_links\": {\n \"self\": \"http://localhost:8080/confluence/rest/api/space/TEST\"\n },\n \"id\": 753665,\n \"key\": \"TEST\",\n \"name\": \"Test Space\",\n \"type\": \"global\"\n },\n \"status\": \"current\",\n \"title\": \"Test Space Home\",\n \"type\": \"page\",\n \"version\": {\n \"by\": {\n \"displayName\": \"Gil Admin\",\n \"profilePicture\": {\n \"height\": 48,\n \"isDefault\": true,\n \"path\": \"/s/en_GB/5723/dfa6f4056bde4993312ffa3cb0f626ca41e68821.1/_/images/icons/profilepics/default.png\",\n \"width\": 48\n },\n \"type\": \"known\",\n \"userKey\": \"2c968271494ecbb701494ecc80dd0002\",\n \"username\": \"admin\"\n },\n \"minorEdit\": false,\n \"number\": 5,\n \"when\": \"2014-10-27T16:09:24.368+1100\"\n }\n}\n```\n"},{"title":"Pagination in the REST API","anchor":"pagination-in-the-rest-api","body":"---\naliases:\n- /server/confluence/pagination-in-the-rest-api-31517431.html\n- /server/confluence/pagination-in-the-rest-api-31517431.md\ncategory: reference\nconfluence_id: 31517431\ndac_edit_link: https://developer.atlassian.com/pages/editpage.action?cjm=wozere&pageId=31517431\ndac_view_link: https://developer.atlassian.com/pages/viewpage.action?cjm=wozere&pageId=31517431\ndate: '2018-10-02'\nlegacy_title: Pagination in the REST API\nplatform: server\nproduct: confluence\nsubcategory: api\ntitle: Pagination in the REST API\n---\n# Pagination in the REST API\n\nbody.storage,history,space,version,ancestors
","schema":{"type":"string"}},{"name":"draftId","in":"path","description":"the id of the draft","required":true,"schema":{"type":"string"}},{"name":"status","in":"query","description":"only support 'draft' status for now.","schema":{"type":"string"}}],"requestBody":{"description":"he content to be created, where the status of the included content is \"current\",\nand the content has an ID (which will be the draft ID)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Content"}}}},"responses":{"200":{"description":"returns a JSON representation of the content","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Content"}}}}}},"post":{"tags":["Content Blueprint"],"summary":"Publish legacy draft","description":"Publishes a legacy draft of a Content created from a ContentBlueprint.","operationId":"publishLegacyDraft","parameters":[{"name":"expand","in":"query","description":"A comma separated list of properties to expand on the content. Default value: body.storage,history,space,version,ancestors
","schema":{"type":"string"}},{"name":"draftId","in":"path","description":"the id of the draft","required":true,"schema":{"type":"string"}},{"name":"status","in":"query","description":"only support 'draft' status for now.","schema":{"type":"string"}}],"requestBody":{"description":"The content to be created, where the status of the included content is \"current\",\nand the content has an ID (which will be the draft ID)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Content"}}}},"responses":{"200":{"description":"returns a JSON representation of the content","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Content"}}}}}}},"/rest/api/contentbody/convert/{to}":{"post":{"tags":["Content Body"],"summary":"Convert body representation","description":"Converts between content body representations. Not all representations can be converted to/from other formats. Supported conversions: \n\n- `storage -> view,export_view,styled_view,editor`\n- `editor -> storage`\n- `view -> None`\n- `export_view -> None`\n- `styled_view -> None`\n\nExample request URI(s):\n\n- `http://example.com/confluence/rest/api/contentbody/convert/view`","operationId":"convert","parameters":[{"name":"expand","in":"query","description":"A comma separated list of properties to expand on the content. Default value: body.storage,history,space,version,ancestors
","schema":{"type":"string"}},{"name":"to","in":"path","description":"the representation to convert to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"the body to convert from","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContentBody"}}}},"responses":{"200":{"description":"returns the converted body","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContentBody"}}}}}}},"/rest/api/content/{id}/label":{"get":{"tags":["Content Labels"],"summary":"Get labels","description":"Returns the list of labels on a piece of Content. Example request URI(s): \n\n- `http://example.com/confluence/rest/api/content/1234/label`\n- `http://example.com/confluence/rest/api/content/1234/label?prefix=global&start=0&limit=200`","operationId":"labels","parameters":[{"name":"prefix","in":"query","description":"the prefixes to filter the labels with.","schema":{"type":"string"}},{"name":"limit","in":"query","description":"the limit of the number of labels to return, this may be restricted by fixed system limits","schema":{"type":"string"}},{"name":"start","in":"query","description":"he start point of the collection to return.","schema":{"type":"string"}},{"name":"id","in":"path","description":"the id of the content to get the labels for","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"returns a JSON representation of the existing labels on the content with the given id","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Label"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}},"404":{"description":" Returned if there is no content with the given id, or if the calling user does not have permission to view the content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}},"post":{"tags":["Content Labels"],"summary":"Add Labels","description":"Adds a list of labels to the specified content. The body is the json representation of the list.","operationId":"addLabels","parameters":[{"name":"id","in":"path","description":"the id of the content to get the labels for","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"a single label object or a list of labels to add","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Label"}}}},"responses":{"200":{"description":"returns a JSON representation of the existing and added labels on the content with the given id, or a 404 NOT FOUND if there is no content with the given id or if the user is not permitted. An empty list will be returned if there are no labels on the given content","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Label"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}},"404":{"description":"Returned if there is no content with the given id, or if the calling user does not have permission to view the content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}},"delete":{"tags":["Content Labels"],"summary":"Delete label with query param","description":"Deletes a labels to the specified content.","operationId":"deleteLabelWithQueryParam","parameters":[{"name":"name","in":"query","description":"the name of the label to be removed from the content","schema":{"type":"string"}},{"name":"id","in":"path","description":"the id of the content to get the labels for","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"returns no response on successful delete"},"403":{"description":" Returned if user has view permission, but no edit permission to the content.permission to the content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"404":{"description":"Returned if content or label doesn't exist, or calling user doesn't have view permission to the content.permission to the content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/content/{id}/label/{label}":{"delete":{"tags":["Content Labels"],"summary":"Delete label","description":"Deletes a labels to the specified content. The body is the json representation of the list. When calling this method through REST the label parameter doesn't accept `/` characters in label names, because of security constraints. For this case please use the query parameter version of this method (`/content/{id}/label?name={label}`)","operationId":"deleteLabel","parameters":[{"name":"id","in":"path","description":"the id of the content to get the labels for","required":true,"schema":{"type":"string"}},{"name":"label","in":"path","description":"the name of the label to be removed from the content","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"returns no response on successful delete"},"400":{"description":"Returned if trying to delete a label with \"/\" in the name.permission to the content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"403":{"description":"Returned if user has view permission, but no edit permission to the content.permission to the content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"404":{"description":"Returned if content or label doesn't exist, or calling user doesn't have view permission to the content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/content/{id}/property":{"get":{"tags":["Content Property"],"summary":"Find all content properties","description":"Returns a paginated list of content properties. Example request URI(s): \n\n- `http://example.com/confluence/rest/api/content/1234/property?expand=content,version`","operationId":"findAll","parameters":[{"name":"expand","in":"query","description":"a comma separated list of properties to expand on the content properties. Default value: version
.","schema":{"type":"string"}},{"name":"limit","in":"query","description":"the limit of the number of labels to return, this may be restricted by fixed system limits","schema":{"type":"string"}},{"name":"start","in":"query","description":"the start point of the collection to return.","schema":{"type":"string"}},{"name":"id","in":"path","description":"the id of the content","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"returns a JSON representation of the content properties, or a 404 NOT FOUND if there is no content with the given id or if the user is not permitted..","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/JsonContentProperty"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}},"404":{"description":" Returned if there is no content with the given id, or if the calling user does not have permission to view the content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}},"post":{"tags":["Content Property"],"summary":"Create a content property","description":"Creates a new content property.","operationId":"create_1","parameters":[{"name":"id","in":"path","description":"the id of the content","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"content property to be created.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JsonContentProperty"}}}},"responses":{"200":{"description":"Returns a full JSON representation of the content property.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JsonContentProperty"}}}},"400":{"description":" Returned if the given property has a different ContentId to the one in the path, or\n\n if the content already has a value with the given key, or the value is missing, or the value is too long.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"403":{"description":" Returned if the user does not have permission to edit the content with the given ContentId.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"413":{"description":"Returned if the value is too long.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/content/{id}/property/{key}":{"get":{"tags":["Content Property"],"summary":"Find content property by key","description":"Returns a content property. Example request URI(s): \n\n- `http://example.com/confluence/rest/api/content/1234/property/example-property-key?expand=content,version`","operationId":"findByKey","parameters":[{"name":"expand","in":"query","description":"a comma separated list of properties to expand on the content properties. Default value: version
.","schema":{"type":"string"}},{"name":"limit","in":"query","description":"the limit of the number of labels to return, this may be restricted by fixed system limits","schema":{"type":"string"}},{"name":"id","in":"path","description":"the id of the content","required":true,"schema":{"type":"string"}},{"name":"key","in":"path","description":"the key of the content property. Required.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"returns a JSON representation of the content property.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JsonContentProperty"}}}},"404":{"description":"Returned if there is no content with the given id, or no property with the given key, or if the calling user does not have permission to view the content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}},"put":{"tags":["Content Property"],"summary":"Update content property","description":"Updates a content property. The body contains the representation of the content property. Must include the property id, and the new version number. Attempts to create a new content property if the given version number is `1`","operationId":"update_1","parameters":[{"name":"expand","in":"query","description":"a comma separated list of properties to expand on the content properties. Default value: version
.","schema":{"type":"string"}},{"name":"id","in":"path","description":"the id of the content","required":true,"schema":{"type":"string"}},{"name":"key","in":"path","description":"the key of the content property. Required.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"the content property being updated","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JsonContentProperty"}}}},"responses":{"200":{"description":"returns a JSON representation of the content property, or a 404 NOT FOUND if there is no content with the given id, or no property with the given key, or if the user is not permitted.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JsonContentProperty"}}}},"400":{"description":"Returned if the given property has a different ContentId to the one in the path, or if the property has a different key to the one in the path, or the value is missing, or the value is too long.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"403":{"description":"Returned if the user does not have permission to edit the content with the given ContentId.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"404":{"description":"eturned if there is no content with the given id, or no property with the given key, or if the calling user does not have permission to view the content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"409":{"description":"Returned if the given version is does not match the expected target version of the updated property.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"413":{"description":"Returned if the value is too long.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}},"post":{"tags":["Content Property"],"operationId":"create_2","parameters":[{"name":"id","in":"path","description":"the id of the content","required":true,"schema":{"type":"string"}},{"name":"key","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JsonContentProperty"}}}},"responses":{"default":{"description":"default response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JsonContentProperty"}}}}}},"delete":{"tags":["Content Property"],"summary":"Delete content property","description":"Deletes a content property.","operationId":"delete_2","parameters":[{"name":"id","in":"path","description":"the id of the content","required":true,"schema":{"type":"string"}},{"name":"key","in":"path","description":"the key of the content property. Required.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"Returned if successfully deleted."},"404":{"description":"Returned if there is no content with the given id, or if the calling user does not have permission to view the content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/content":{"get":{"tags":["Content Resource"],"summary":"Get content","description":"Returns a paginated list of Content. Example request URI(s): \n\n- `http://example.com/confluence/rest/api/content?spaceKey=TST&title=Cheese&expand=space,body.view,version,container`\n- `http://example.com/confluence/rest/api/content?type=blogpost&spaceKey=TST&title=Bacon&postingDay=2014-02-13&expand=space,body.view,version,container`","operationId":"getContent","parameters":[{"name":"spaceKey","in":"query","description":" the space key to find content under.","schema":{"type":"string"}},{"name":"expand","in":"query","description":"a comma separated list of properties to expand on the content. Default value: history,space,version
.","schema":{"type":"string"}},{"name":"limit","in":"query","description":"the limit of the number of items to return, this may be restricted by fixed system limits.","schema":{"type":"string"}},{"name":"start","in":"query","description":"the start point of the collection to return.","schema":{"type":"string"}},{"name":"postingDay","in":"query","description":"the posting day of the blog post. Required for blogpost
type. Format: yyyy-mm-dd
. Example: 2013-02-13
","schema":{"type":"string"}},{"name":"title","in":"query","description":" the title of the page to find. Required for page
type.","schema":{"type":"string"}},{"name":"type","in":"query","description":"the content type to return. Default value: page
. Valid values: page, blogpost
.","schema":{"type":"string"}},{"name":"status","in":"query","description":" list of statuses the content to be found is in. Defaults to current is not specified. If set to 'any', content in 'current' and 'trashed' status will be fetched. Does not support 'historical' status for now.","schema":{"type":"string"}}],"responses":{"200":{"description":"Returns a full JSON representation of a list of content.","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Content"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}},"404":{"description":"Returned if the calling user does not have permission to view the content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}},"post":{"tags":["Content Resource"],"summary":"Create content","description":"Creates a new piece of Content or publishes the draft if the content id is present. For the case publishing draft, a new piece of content will be created and all metadata from the draft will be transferred into the newly created content.","operationId":"createContent","parameters":[{"name":"expand","in":"query","description":" comma separated list of properties to expand on the content. Default value: history,space,version
","schema":{"type":"string"}},{"name":"status","in":"query","description":"list of Content statuses to filter results on. \n\n Default value: [current]
.","schema":{"type":"string"}}],"requestBody":{"description":"new content to be created.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Content"}}},"required":true},"responses":{"200":{"description":"returns a JSON representation of the content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Content"}}}},"404":{"description":"returned if there is no content with the given id or if the user is not permitted.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/content/{id}":{"get":{"tags":["Content Resource"],"summary":"Get content by ID","description":"Returns a piece of Content. Example request URI(s): \n\n- `http://example.com/confluence/rest/api/content/1234?expand=space,body.view,version,container`\n- `http://example.com/confluence/rest/api/content/1234?status=any`","operationId":"getContentById","parameters":[{"name":"expand","in":"query","description":"A comma separated list of properties to expand on the content. Default value: history,space,version
. \n\n We can also specify some extensions such as extensions.inlineProperties
(for getting inline comment-specific properties) or extensions.resolution
for the resolution status of each comment in the results","schema":{"type":"string"}},{"name":"id","in":"path","description":"the id of the content.","required":true,"schema":{"type":"string"}},{"name":"version","in":"query","description":"version of the content.","schema":{"type":"string"}},{"name":"status","in":"query","description":"list of Content statuses to filter results on. \n\n Default value: [current]
.","schema":{"type":"string"}}],"responses":{"200":{"description":"returns a JSON representation of the content, or a 404 NOT FOUND if there is no content with the given id or if the user is not permitted.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Content"}}}},"404":{"description":"Returned if there is no content with the given id, or if the calling user does not have permission to view the content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}},"delete":{"tags":["Content Resource"],"summary":"Delete content","description":"Trashes or purges a piece of Content, based on its ContentType and ContentStatus. \n\nThere are three cases:\n\n- If the content is trashable and its status is current, it will be trashed.\n\n- If the content is trashable, its status is trashed and the status query parameter in the request is trashed, the content will be purged from the trash and deleted permanently.\n\n- If the content is not trashable it will be deleted permanently without being trashed.","operationId":"delete_3","parameters":[{"name":"id","in":"path","description":" the id of the content.","required":true,"schema":{"type":"string"}},{"name":"status","in":"query","description":"the status of the content to be deleted.","schema":{"type":"string"}}],"responses":{"200":{"description":"Returned if successfully trashed.","content":{"application/json":{}}},"204":{"description":"Returned if successfully purged."},"404":{"description":"Returned if there is no content with the given id, or if the calling user does not have permission to trash or purge the content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"409":{"description":"Returned if there is a stale data object conflict when trying to delete a draft.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/content/{id}/history":{"get":{"tags":["Content Resource"],"summary":"Get history of content","description":"Returns the history of a particular piece of content. Example request URI(s): \n\n- `http://example.com/confluence/rest/api/content/1234/history`\n- `http://example.com/confluence/rest/api/content/1234/history?expand=previousVersion,nextVersion,lastUpdated`\n- `http://example.com/confluence/rest/api/content/1234/history?cql=creator=currentUser()&cqlcontext={\"spaceKey\":\"TST\", \"contentId\":\"55\"}&expand=previousVersion,nextVersion,lastUpdated`\n- `http://example.com/confluence/rest/api/content/1234/history?cql=creator=currentUser()&cqlcontext={\"spaceKey\":\"TST\", \"contentId\":\"55\"}&expand=previousVersion,nextVersion,lastUpdated&start=0&limit=10`","operationId":"getHistory","parameters":[{"name":"expand","in":"query","description":"a comma separated list of properties to expand on the content. Default value: previousVersion,nextVersion,lastUpdated
.","schema":{"type":"string"}},{"name":"id","in":"path","description":" the id of the content.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Returns a full JSON representation of the content's history","content":{"application/json":{"schema":{"$ref":"#/components/schemas/History"}}}},"404":{"description":"Returned if there is no content with the given id, or if the calling user does not have permission to view the content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/content/{id}/history/{version}/macro/hash/{hash}":{"get":{"tags":["Content Resource"],"summary":"Get macro body by hash","description":"Returns the body of a macro (in storage format) with the given hash. This resource is primarily used by connect applications that require the body of macro to perform their work. \n\nThe hash is generated by connect during render time of the local macro holder and is usually only relevant during the scope of one request. For optimisation purposes, this hash will usually live for multiple requests. \n\nCollecting a macro by its hash should now be considered deprecated and will be replaced, transparently with macroIds. This resource is currently only called from connect addons which will eventually all use the `getContentById` resource. \n\nTo make the migration as seamless as possible, this resource will match macros against a generated hash or a stored macroId. This will allow add ons to work during the migration period.","operationId":"getMacroBodyByHash","parameters":[{"name":"id","in":"path","description":" the id of the content.","required":true,"schema":{"type":"string"}},{"name":"version","in":"path","description":"the version of the content which the hash belongs.","required":true,"schema":{"type":"string"}},{"name":"hash","in":"path","description":"the macroId to find the correct macro.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Returns a json representation of a macro.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MacroInstance"}}}},"404":{"description":"Returned if there is no content with the given id, or if the calling user does not have permission to view the content, or there is no macro matching the given hash or id.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}},"deprecated":true}},"/rest/api/content/{id}/history/{version}/macro/id/{macroId}":{"get":{"tags":["Content Resource"],"summary":"Get macro body by macro ID","description":"Returns the body of a macro (in storage format) with the given id. This resource is primarily used by connect applications that require the body of macro to perform their work. \n\nWhen content is created, if no macroId is specified, then Confluence will generate a random id. The id is persisted as the content is saved and only modified by Confluence if there are conflicting IDs. \n\nTo preserve backwards compatibility this resource will also match on the hash of the macro body, even if a macroId is found. This check will become redundant as pages get macroId's generated for them and transparently propagate out to all instances.","operationId":"getMacroBodyByMacroId","parameters":[{"name":"macroId","in":"path","description":"the macroId to find the correct macro.","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","description":" the id of the content.","required":true,"schema":{"type":"string"}},{"name":"version","in":"path","description":"the version of the content which the hash belongs.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Returns a json representation of a macro.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MacroInstance"}}}},"404":{"description":"Returned if there is no content with the given id, or if the calling user does not have permission to view the content, or there is no macro matching the given id or hash.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/content/scan":{"get":{"tags":["Content Resource"],"summary":"Scan content by space key","description":"Returns a paginated list of Content. Example request URI(s): \n\n- `http://example.com/confluence/rest/api/content/scan?spaceKey=TST&limit=100&expand=space,body.view,version,container`\n- `http://example.com/confluence/rest/api/content/scan?limit=100&expand=space,body.view,version,container`","operationId":"scanContent","parameters":[{"name":"cursor","in":"query","description":"the identifier which is used to skip results from a previous query when paginating. Cursor is empty in first request, to move forward or backward use cursor provided in response.","schema":{"type":"string"}},{"name":"spaceKey","in":"query","description":" the space key to find content under.","schema":{"type":"string"}},{"name":"expand","in":"query","description":"a comma separated list of properties to expand on the content. Default value: history,space,version
.","schema":{"type":"string"}},{"name":"limit","in":"query","description":"the limit of the number of items to return, this may be restricted by fixed system limits.","schema":{"type":"string"}},{"name":"status","in":"query","description":" list of statuses the content to be found is in. Defaults to current is not specified. If set to 'any', content in 'current' and 'trashed' status will be fetched. Does not support 'historical' status for now.","schema":{"type":"string"}}],"responses":{"200":{"description":"returns a JSON representation of the list of content.","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Content"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}},"404":{"description":"returned if the user is not permitted.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/content/search":{"get":{"tags":["Content Resource"],"summary":"Search content using CQL","description":"Fetch a list of content using the Confluence Query Language (CQL). See: [Advanced searching using CQL](https://developer.atlassian.com/display/CONFDEV/Advanced+Searching+using+CQL) \n\n Example request URI(s): \n\n- `http://localhost:8080/confluence/rest/api/content/search?cql=creator=currentUser()&cqlcontext={\"spaceKey\":\"TST\", \"contentId\":\"55\"}`\n- `http://localhost:8080/confluence/rest/api/content/search?cql=space=DEV AND label=docs&expand=space,metadata.labels&limit=10`","operationId":"search","parameters":[{"name":"cqlcontext","in":"query","description":" the context to execute a cql search in, this is the json serialized form of SearchContext","schema":{"type":"string"}},{"name":"expand","in":"query","description":"a comma separated list of properties to expand on the content. Default value: history,space,version
.","schema":{"type":"string"}},{"name":"limit","in":"query","description":"the limit of the number of items to return, this may be restricted by fixed system limits.","schema":{"type":"string"}},{"name":"start","in":"query","description":"the start point of the collection to return.","schema":{"type":"string"}},{"name":"cql","in":"query","description":" a cql query string to use to locate content.","schema":{"type":"string"}}],"responses":{"200":{"description":"returns a paginated list of content.","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Content"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}},"404":{"description":"Returned if the CQL is invalid or missing.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/content/{contentId}":{"put":{"tags":["Content Resource"],"summary":"Update content","description":"Updates a piece of Content, including changes to content status. \n\nTo update a piece of content you must increment the `version.number`, supplying the number of the version you are creating. The `title` property can be updated on all content, `body` can be updated on all content that has a body (not attachments). For instance to update the content of a blogpost that currently has version 1:\n\n`PUT /rest/api/content/456`\n\n```json\n{\n \"version\":{\n \"number\": 2\n },\n \"title\":\"My new title\",\n \"type\":\"page\",\n \"body\":{\n \"storage\":{\n \"value\":\"New page data.
\",\n \"representation\":\"storage\"\n }\n }\n}\n```\n\nTo update a page and change its parent page, supply the `ancestors` property with the request with the parent as the first ancestor i.e. to move a page to be a child of page with ID 789:\n\n`PUT /rest/api/content/456`\n\n```json\n{\n \"version\":{\n \"number\": 2\n },\n \"ancestors\": [{\"id\":789}],\n \"type\":\"page\",\n \"body\":{\n \"storage\":{\n \"value\":\"New page data.
\",\n \"representation\":\"storage\"\n }\n }\n}\n```\n\nChanging status\n\nTo restore a piece of content that has the status of trashed the content must have it's `version` incremented, and `status` set to `current`. No other field modifications will be performed when restoring a piece of content from the trash.\n\nRequest example to restore from trash: `{\"id\": \"557059\",\"status\": \"current\",\"version\": {\"number\": 2}}`\n\nIf the content you're updating has a draft, specifying `status=draft` will delete that draft and the `body` of the content will be replaced with the `body` specified in the request.\n\nRequest example to delete a draft:\n\n`PUT: http://localhost:9096/confluence/rest/api/content/2149384202?status=draft`\n\n```json\n{\n \"id\":\"2149384202\",\n \"status\":\"current\",\n \"version\":{\n \"number\":4\n },\n \"space\":{\n \"key\":\"TST\"\n },\n \"type\":\"page\",\n \"title\":\"page title\",\n \"body\":{\n \"storage\":{\n \"value\":\"New page data.
\",\n \"representation\":\"storage\"\n }\n }\n}\n```\n\nChanging page position\n\nTo set page position, supply the `position` property in the request body with a positive integer. Content with unset positions will have a `position` value of -1. To unset a content position, supply `position` property with -1.\n\nRequest example to set page position to 1\n\n`PUT /rest/api/content/2149384202`\n\n```json\n{\n \"id\":\"2149384202\",\n \"version\":{\n \"number\":2\n },\n \"type\":\"page\",\n \"title\":\"page title\",\n \"position\":1\n}\n```\n\n Request example to unset page position \n\n`PUT /rest/api/content/2149384202`\n\n```json\n{\n \"id\":\"2149384202\",\n \"version\":{\n \"number\":2\n },\n \"type\":\"page\",\n \"position\":-1\n}\n```\n\n","operationId":"update_2","parameters":[{"name":"conflictPolicy","in":"query","description":"the conflict policy, default value:abort","schema":{"type":"string"}},{"name":"contentId","in":"path","description":" the id of the content.","required":true,"schema":{"type":"string"}},{"name":"status","in":"query","description":"the existing status of the content to be updated.","schema":{"type":"string"}}],"requestBody":{"description":"new content to be created.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Content"}}},"required":true},"responses":{"200":{"description":"Returns a full JSON representation of a piece of content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Content"}}}},"400":{"description":"Returned if no space or no content type, or setup a wrong version type set to content, or status param is not draft and status content is current","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"404":{"description":"Returned if can not find draft with current content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/content/{id}/restriction/byOperation":{"get":{"tags":["Content Restrictions"],"summary":"Get all restrictions by Operation","description":"Returns info about all restrictions by operation.","operationId":"byOperation","parameters":[{"name":"expand","in":"query","description":"A comma separated list of properties to expand on the content properties. Default value: group.","schema":{"type":"string"}},{"name":"id","in":"path","description":"The id of the content","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Returns a JSON representation of the restrictions group by operations.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MockRestrictionsResponse"}}}}}}},"/rest/api/content/{id}/restriction/byOperation/{operationKey}":{"get":{"tags":["Content Restrictions"],"summary":"Get all restrictions for given operation","description":"Returns info about all restrictions of given operation.","operationId":"forOperation","parameters":[{"name":"operationKey","in":"path","description":"key of the operation.","required":true,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Aa comma separated list of properties to expand on the content properties. Default value: group.","schema":{"type":"string"}},{"name":"limit","in":"query","description":"pagination limit.","schema":{"type":"string"}},{"name":"start","in":"query","description":"pagination start.","schema":{"type":"string"}},{"name":"id","in":"path","description":"The id of the content","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Returns a JSON representation of the restrictions of given operation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OperationRestriction"}}}}}}},"/rest/api/content/{id}/restriction":{"put":{"tags":["Content Restrictions"],"summary":"Update restrictions","description":"Sets all the restrictions specified to a piece of content identified by `contentId`. Setting per-content restrictions is currently allowed for Pages or BlogPosts only. \n\nExample request URI: \n\n`http://example.com/confluence/rest/content/1234567/restriction?expand=`\n\nThe payload uses the same schema as returned by the GET requests from `/rest/api/content/{id}/restriction/byOperation*` which can be used as a template but is not necessary. \n\nExample request for a single content restriction: \n\n```json\n[ { \"operation\": \"update\", \"restrictions\": { \"user\": [ { \"type\": \"known\", \"username\": \"admin\" } ] } } ]\n```\n\nExample request for updating two ContentRestrictions: \n\n```json\n[ { \"operation\": \"update\", \"restrictions\": { \"user\": [ { \"type\": \"known\", \"username\": \"admin\" } ] } }, { \"operation\": \"read\", \"restrictions\": { \"user\": [ { \"type\": \"known\", \"username\": \"fred\" } ] } } ]\n```\n\nRules for using this method: \n\n- The provided ContentRestrictions will overwrite any existing restrictions on the Content for the corresponding operations. \n- If the provided `ContentRestriction` lacks any supported operations, the restrictions for the operations will not be altered. \n- Setting `users` and/or `groups` map entries as empty arrays will remove the corresponding content restrictions. \n- Missing `users` and/or `groups` map entries means the corresponding operation's user/group content restrictions won't be changed. \n- Modifying restrictions to revoke the requesting user's access is prohibited.","operationId":"updateRestrictions","parameters":[{"name":"expand","in":"query","description":"A comma separated list of properties to expand in the response. Default is restrictions.user, restrictions.group
Default value: group.","schema":{"type":"string"}},{"name":"limit","in":"query","description":"pagination limit.","schema":{"type":"string"}},{"name":"start","in":"query","description":"pagination start.","schema":{"type":"string"}},{"name":"id","in":"path","description":"The id of the content","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ContentRestriction"}}}}},"responses":{"200":{"description":"Returns a full JSON representation of the restrictions present directly on piece of content after the update operation.","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/OperationRestriction"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}},"400":{"description":"Returned if any of the above validation rules are violated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"401":{"description":"Returned if the calling user is not authenticated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"403":{"description":"Returned if the calling user does not have permission to edit the restrictions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"404":{"description":"Returned if there is no content with the given id, or if the calling user does not have permission to view the content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/content/{id}/version/{versionNumber}":{"delete":{"tags":["Content Version"],"summary":"Delete content history","description":"Delete a historical version of a page or a blogpost. Current user must have edit permission on content, or it will throw a permission exception.","operationId":"deleteContentHistory","parameters":[{"name":"id","in":"path","description":"The id of the content","required":true,"schema":{"type":"string"}},{"name":"versionNumber","in":"path","description":"version number starts from 1 up to current version.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"Returns a Successful deletion of a page/blogpost version."},"400":{"description":"Returned if versionNumber is less than 1, does not exist or has already been deleted.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"403":{"description":"Returned if the calling user doesn't have permission to edit the content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"404":{"description":"Returned if the contentId cannot be found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/content/{contentId}/watchers":{"get":{"tags":["Content Watchers"],"summary":"Fetch users watching a given content","description":"Returns a paginated list of Users watching the given Content identified by contentId. Only a Confluence Administrator or Space Administrator can perform this action.","operationId":"index","parameters":[{"name":"contentId","in":"path","description":"the ID of the Content the User is attempting to view the watchers for.","required":true,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"The limit of the number of users to return, this may be restricted by fixed system limit.","schema":{"type":"string"}},{"name":"start","in":"query","description":"The start point of the collection to return.","schema":{"type":"string"}}],"responses":{"200":{"description":"The list of Users watching the Content.","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/User"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}},"400":{"description":"Returned if the requested Content is not of type BlogPost or Page.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"401":{"description":"Returned if the calling User is not authenticated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"403":{"description":"Returned if the calling User is not a Confluence Administrator or Space Administrator.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"404":{"description":"Returned if the Content does not exist.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/content/{id}/descendant":{"get":{"tags":["Content Descendant"],"summary":"Get Descendants","description":"Returns a map of the descendants of a piece of Content. Content can have multiple types of descendants - for example a Page can have descendants that are also Pages, but it can also have Comments and Attachments. \n\nThe ContentType(s) of the descendants returned is specified by the `expand` query parameter in the request - this parameter can include expands for multiple descendant types. If no types are included in the expand parameter, the map returned will just list the descendant types that are available to be expanded for the Content referenced by the `id` path parameter. \n\nCurrently the only supported descendants are comment descendants of non-comment Content. \n\nExample request URI(s): \n\n`http://example.com/confluence/rest/api/content/1234/descendant` \n\n`http://example.com/confluence/rest/api/content/1234/descendant?expand=comment.body.VIEW` \n\n`http://example.com/confluence/rest/api/content/1234/descendant?expand=comment`","operationId":"descendants","parameters":[{"name":"expand","in":"query","description":" a comma separated list of properties to expand on the descendants.","schema":{"type":"string"}},{"name":"id","in":"path","description":"the ID of the Content the User is attempting to view the descendants for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Returns a JSON map representing multiple ordered collections of content descendants,keyed by content type.","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Content"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}},"404":{"description":"Returned if there is no content with the given id, or if the calling user does not have permission to view the content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/content/{id}/descendant/{type}":{"get":{"tags":["Content Descendant"],"summary":"Get descendants of type","description":"Returns the direct descendants of a piece of Content. The ContentType(s) of the descendants returned is specified by the `type` path parameter in the request. Currently the only supported descendants are comment descendants of non-comment Content. \n\nExample request URI(s): \n\n`http://example.com/confluence/rest/api/content/1234/descendant/comment` \n\n`http://example.com/confluence/rest/api/content/1234/descendant/comment?expand=body.VIEW` \n\n`http://example.com/confluence/rest/api/content/1234/descendant/comment?start=20&limit=10`","operationId":"descendantsOfType","parameters":[{"name":"expand","in":"query","description":"a comma separated list of properties to expand on the descendants.","schema":{"type":"string"}},{"name":"limit","in":"query","description":" (optional, default: site limit) how many items should be returned after the start index.","schema":{"type":"string"}},{"name":"start","in":"query","description":"(optional, default: 0) the index of the first item within the result set that should be returned.","schema":{"type":"string"}},{"name":"id","in":"path","description":"the ID of the Content the User is attempting to view the descendants for.","required":true,"schema":{"type":"string"}},{"name":"type","in":"path","description":" content type to filter descendants on.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Returns a JSON map representing multiple ordered collections of content descendants, keyed by content type.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Content"}}}},"404":{"description":"Returned if there is no content with the given id, or if the calling user does not have permission to view the content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/webhooks":{"get":{"tags":["Webhooks"],"summary":"Find webhooks","description":"Find webhooks. The authenticated user must be an administrator to call this resource.","operationId":"findWebhooks","parameters":[{"name":"limit","in":"query","description":"the limit of the number of items to return, this may be restricted by fixed system limits.","schema":{"type":"string"}},{"name":"start","in":"query","description":"the start point of the collection to return","schema":{"type":"string"}},{"name":"event","in":"query","description":"list of webhook event ids to filter for","schema":{"type":"string"}},{"name":"statistics","in":"query","description":"if statistics should be provided for all found webhooks.","schema":{"type":"string"}}],"responses":{"200":{"description":"returns a list of webhooks.","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/RestWebhook"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}},"401":{"description":"returned if the currently authenticated user has insufficient permissions to find webhooks.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}},"post":{"tags":["Webhooks"],"summary":"Create webhook","description":"Create a webhook via the URL. The authenticated user must be an administrator to call this resource.","operationId":"createWebhook","requestBody":{"description":"the webhook to be created.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestWebhook"}}},"required":true},"responses":{"201":{"description":"returns a created webhook.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Webhook"}}}},"400":{"description":"returned if The webhook parameters were invalid or not supplied.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"401":{"description":"The currently authenticated user has insufficient permissions to create webhooks.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/webhooks/{webhookId}":{"get":{"tags":["Webhooks"],"summary":"Get webhook","description":"Get a webhook by id. The authenticated user must be an administrator to call this resource.","operationId":"getWebhook","parameters":[{"name":"webhookId","in":"path","description":"id of the webhook","required":true,"schema":{"type":"string"}},{"name":"statistics","in":"query","schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"returns a webhook.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestWebhook"}}}},"401":{"description":"returned if the currently authenticated user has insufficient permissions to get webhook.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"404":{"description":"returned if the webhook does not exist.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}},"put":{"tags":["Webhooks"],"summary":" Update webhook","description":" Update an existing webhook. The authenticated user must be an administrator to call this resource.","operationId":"updateWebhook","parameters":[{"name":"webhookId","in":"path","description":"the existing webhook id","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"the representation of the updated values for the webhook","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestWebhook"}}},"required":true},"responses":{"200":{"description":"returns a webhook.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestWebhook"}}}},"401":{"description":"returned if the currently authenticated user has insufficient permissions to update a webhook.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"404":{"description":"returned if the webhook does not exist.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}},"delete":{"tags":["Webhooks"],"summary":"Delete webhook","description":"Delete a webhook via the URL. The authenticated user must be an administrator to call this resource.","operationId":"deleteWebhook","parameters":[{"name":"webhookId","in":"path","description":"the id of the webhook to be deleted.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"returned if deleted successfully."},"401":{"description":"returned if the currently authenticated user has insufficient permissions to delete webhooks.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"404":{"description":"returned if the webhook does not exist.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/webhooks/{webhookId}/latest":{"get":{"tags":["Webhooks"],"summary":"Get latest invocations","description":"Get the latest invocations for a specific webhook. The authenticated user must be an administrator to call this resource.","operationId":"getLatestInvocation","parameters":[{"name":"webhookId","in":"path","description":"id of the webhook","required":true,"schema":{"type":"string"}},{"name":"outcomes","in":"query","description":"the outcome to filter for. Can be SUCCESS, FAILURE, ERROR. None specified means that the all will be considered.","schema":{"type":"string"}},{"name":"event","in":"query","description":"the string id of a specific event to retrieve the last invocation for.","schema":{"type":"string"}},{"name":"outcome","in":"query","schema":{"uniqueItems":true,"type":"array","items":{"type":"string"}}}],"responses":{"200":{"description":"returns a webhook invocation dataset.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DetailedInvocation"}}}},"401":{"description":"returned if the currently authenticated user has insufficient permissions to get webhook.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"404":{"description":"returned if the webhook does not exist.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/webhooks/{webhookId}/statistics":{"get":{"tags":["Webhooks"],"summary":"Get statistic","description":"Get the statistics for a specific webhook. The authenticated user must be an administrator to call this resource.","operationId":"getStatistics","parameters":[{"name":"webhookId","in":"path","description":"id of the webhook","required":true,"schema":{"type":"string"}},{"name":"event","in":"query","description":"the string id of a specific event to retrieve the last invocation for.","schema":{"type":"string"}}],"responses":{"200":{"description":"returns a webhook invocation dataset.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestInvocationHistory"}}}},"401":{"description":"returned if the currently authenticated user has insufficient permissions to get webhook.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"404":{"description":"returned if the webhook does not exist.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/webhooks/{webhookId}/statistics/summary":{"get":{"tags":["Webhooks"],"summary":"Get statistics summary","description":"Get the statistics summary for a specific webhook. The authenticated user must be an administrator to call this resource.","operationId":"getStatisticsSummary","parameters":[{"name":"webhookId","in":"path","description":"id of the webhook","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"returns a webhook invocation dataset.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestInvocationHistory"}}}},"401":{"description":"returned if the currently authenticated user has insufficient permissions to get webhook.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"404":{"description":"returned if the webhook does not exist.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/webhooks/test":{"post":{"tags":["Webhooks"],"summary":"Test webhook","description":"Test connectivity to a specific endpoint. The authenticated user must be an administrator to call this resource.","operationId":"testWebhook","parameters":[{"name":"url","in":"query","description":"the url in which to connect to","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"returns a webhook.","content":{"application/json":{}}},"401":{"description":"returned if the currently authenticated user has insufficient permissions to test a connection.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"404":{"description":"returned if repository does not exist.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/group/{groupName}":{"get":{"tags":["Group"],"summary":"Get group by name","description":"Get the user group with the group name","operationId":"getGroup","parameters":[{"name":"expand","in":"query","schema":{"type":"string"}},{"name":"groupName","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The user group with the group name","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Group"}}}},"403":{"description":"The calling user does not have permission to view groups","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/group":{"get":{"tags":["Group"],"summary":"Get groups","description":"Get a paginated collection of user groups","operationId":"getGroups","parameters":[{"name":"expand","in":"query","schema":{"type":"string","default":""}},{"name":"limit","in":"query","schema":{"type":"integer","format":"int32","default":200}},{"name":"start","in":"query","schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"The number of user groups in the system","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Group"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}},"403":{"description":"The calling user does not have permission to view groups","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/group/{groupName}/member":{"get":{"tags":["Group"],"summary":"Get members of group","description":"Get a paginated collection of users in the given group","operationId":"getMembers","parameters":[{"name":"expand","in":"query","schema":{"type":"string"}},{"name":"groupName","in":"path","required":true,"schema":{"$ref":"#/components/schemas/Group"}},{"name":"limit","in":"query","schema":{"type":"integer","format":"int32","default":200}},{"name":"start","in":"query","schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"a collection of users in the given group","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Person"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}},"403":{"description":"The calling user does not have permission to view groups","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/longtask/{id}":{"get":{"tags":["Long Task"],"summary":"Get task by ID","description":"Returns information about a long-running task.","operationId":"getTask","parameters":[{"name":"expand","in":"query","description":"a comma separated list of properties to expand on the task.","schema":{"type":"string"}},{"name":"id","in":"path","description":" the key of the task to be returned.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"returns a full JSON representation of a long task.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LongTaskStatus"}}}},"404":{"description":"Returned if there is no task with the given key, or if the calling user does not have permission to view it","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/longtask":{"get":{"tags":["Long Task"],"summary":"Get tasks","description":"Returns information about all tracked long-running tasks.","operationId":"getTasks","parameters":[{"name":"expand","in":"query","description":"comma separated list of properties to expand on the tasks.","schema":{"type":"string"}},{"name":"limit","in":"query","description":"the limit of the number of items to return, this may be restricted by fixed system limits","schema":{"type":"string"}},{"name":"start","in":"query","description":"the start point of the collection to return.","schema":{"type":"string"}}],"responses":{"200":{"description":"returns a full JSON representation of a list of long tasks.","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/LongTaskStatus"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}}}}},"/rest/api/search":{"get":{"tags":["Search"],"summary":"Search for entities in confluence","description":"Search for entities in Confluence using the [Confluence Query Language (CQL)](https://developer.atlassian.com/confdev/confluence-rest-api/advanced-searching-using-cql). For example:\n\nExample request URI(s):\n\n- `http://localhost:8080/confluence/rest/api/search?cql=creator=currentUser()&type%20in%20(space,page,user)&cqlcontext={\"spaceKey\":\"TST\", \"contentId\":\"55\"}`\n\n- `http://localhost:8080/confluence/rest/api/search?cql=siteSearch~'example'%20AND%20label=docs&expand=content.space,space.homepage&limit=10`","operationId":"search_1","parameters":[{"name":"cqlcontext","in":"query","description":"the execution context for CQL functions, provides current space key and content id. If this is not provided some CQL functions will not be available.","schema":{"type":"string"}},{"name":"expand","in":"query","description":"the properties to expand on the search result, this may cause database requests for some properties","schema":{"type":"string"}},{"name":"includeArchivedSpaces","in":"query","description":"whether to include content in archived spaces in the result, this defaults to false.","schema":{"type":"string"}},{"name":"limit","in":"query","description":"the limit of the number of items to return, this may be restricted by fixed system limits.","schema":{"type":"string"}},{"name":"start","in":"query","description":"he start point of the collection to return.","schema":{"type":"string"}},{"name":"excerpt","in":"query","description":"the excerpt strategy to apply to the result, one of : indexed, highlight, none. This defaults to highlight.","schema":{"type":"string"}},{"name":"cql","in":"query","description":"the CQL query see advanced searching in confluence using CQL","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"string"}}}},"responses":{"200":{"description":"returns a full JSON representation of a list of search results.","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/SearchResult"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}},"400":{"description":"returned if the query cannot be parsed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/space/{spaceKey}/labels":{"get":{"tags":["Space Label"],"summary":"Fetch all labels","description":"Returns a paginated list of all Labels used by Content within the given Space. This includes Labels used by Pages, Blog Posts, and other Content types. \n\nExample request URI: \n\n`http://example.com/confluence/rest/api/space/TEST/labels`","operationId":"index_1","parameters":[{"name":"spaceKey","in":"path","description":"a string containing the key of the space","required":true,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"the limit of the number of labels to return, this may be restricted by fixed system limits","schema":{"type":"string"}},{"name":"start","in":"query","description":"the start point of the collection to return.","schema":{"type":"string"}}],"responses":{"200":{"description":"a JSON representation of the lists label, or an empty list if no labels are found.","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Label"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}},"403":{"description":"If the calling user does not have permission to view the given space.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"404":{"description":"Returned if there is no space with the given spaceKey.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/space/{spaceKey}/labels/popular":{"get":{"tags":["Space Label"],"summary":"Get popular labels","description":"Returns a paginated list of all Labels used by Content within the given Space. This includes Labels used by Pages, Blog Posts, and other Content types. \n\nExample request URI(s): \n\n`http://example.com/confluence/rest/api/space/TEST/labels`","operationId":"popular","parameters":[{"name":"spaceKey","in":"path","description":"a string containing the key of the space","required":true,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"the limit of the number of labels to return, this may be restricted by fixed system limits","schema":{"type":"string"}},{"name":"start","in":"query","description":"the start point of the collection to return.","schema":{"type":"string"}}],"responses":{"200":{"description":"returns a JSON representation of the lists label, or an empty list if no labels are found.","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Label"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}},"403":{"description":"returned if the calling user does not have permission to view the given space.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"404":{"description":"returned if there is no space with the given spaceKey.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/space/{spaceKey}/labels/recent":{"get":{"tags":["Space Label"],"summary":"Get recent labels","description":"Returns a paginated list of the most recent Labels used by Content within the given Space. This includes Labels used by Pages, Blog Posts, and other Content types. \n\nExample request URI: \n\n`http://example.com/confluence/rest/api/space/TEST/labels/recent`","operationId":"recent","parameters":[{"name":"spaceKey","in":"path","description":"a string containing the key of the space","required":true,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"the limit of the number of labels to return, this may be restricted by fixed system limits","schema":{"type":"string"}},{"name":"start","in":"query","description":"the start point of the collection to return.","schema":{"type":"string"}}],"responses":{"200":{"description":"returns a full JSON representation of a piece of content.","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Label"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}},"403":{"description":"If the calling user does not have permission to view the given space.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"404":{"description":"Returned if there is no space with the given spaceKey.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/space/{spaceKey}/labels/{labelName}/related":{"get":{"tags":["Space Label"],"summary":"Get related labels","description":"Returns a paginated list of related Labels used by Content within the given Space. A Label is defined as being related to another when it is found attached to the same Content as the Label specified in the request. \n\nExample request URI: \n\n`http://example.com/confluence/rest/api/space/TEST/labels/example-label/related`","operationId":"related","parameters":[{"name":"spaceKey","in":"path","description":"a string containing the key of the space","required":true,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"the limit of the number of labels to return, this may be restricted by fixed system limits","schema":{"type":"string"}},{"name":"start","in":"query","description":"the start point of the collection to return.","schema":{"type":"string"}},{"name":"labelName","in":"path","description":"a string containing the name of the label","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"a JSON representation of the lists label, or an empty list if no labels are found.","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Label"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}},"403":{"description":"If the calling user does not have permission to view the given space.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"404":{"description":"Returned if there is no space with the given spaceKey.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/space/{spaceKey}/property":{"get":{"tags":["Space Property"],"summary":"Get space properties","description":"Returns a paginated list of space properties. \n\nExample request URI: \n\n`http://example.com/confluence/rest/api/space/TST/property?expand=space,version`","operationId":"get_1","parameters":[{"name":"spaceKey","in":"path","description":"The key of the space","required":true,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"a comma separated list of properties to expand on the space properties. Default value: version
.","schema":{"type":"string"}},{"name":"limit","in":"query","description":"the limit of the number of items to return, this may be restricted by fixed system limits.","schema":{"type":"string"}},{"name":"start","in":"query","description":"he start point of the collection to return.","schema":{"type":"string"}}],"responses":{"200":{"description":"a JSON representation of the space properties.","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/JsonSpaceProperty"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}},"404":{"description":"Returned if there is no space with the given key, or if the calling user does not have permission to view the space.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}},"post":{"tags":["Space Property"],"summary":"Create a space property","description":"Creates a new space property.","operationId":"create_3","parameters":[{"name":"spaceKey","in":"path","description":"The key of the space","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"space property to be created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JsonSpaceProperty"}}}},"responses":{"200":{"description":"Returns a full JSON representation of the space property.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JsonSpaceProperty"}}}},"400":{"description":"Returned if the space already has a value with the given key, or no property value was provided, or the value is too long.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"403":{"description":"Returned if the user does not have permission to edit the space with the given key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"413":{"description":"Returned if the value is too long.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/space/{spaceKey}/property/{key}":{"get":{"tags":["Space Property"],"summary":"Get space property by key","description":"Returns a space property. \n\nExample request URI: \n\n`http://example.com/confluence/rest/api/space/TST/property/example-property-key?expand=space,version`","operationId":"get","parameters":[{"name":"spaceKey","in":"path","description":"The key of the space","required":true,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"a comma separated list of properties to expand on the space properties. Default value: version
.","schema":{"type":"string"}},{"name":"limit","in":"query","description":"the limit of the number of items to return, this may be restricted by fixed system limits.","schema":{"type":"string"}},{"name":"start","in":"query","description":"he start point of the collection to return.","schema":{"type":"string"}},{"name":"key","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Returns a full JSON representation of the space property.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JsonSpaceProperty"}}}},"404":{"description":"Returned if there is no space with the given key, or no property with the given key, or if the calling user does not have permission to view the space.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}},"put":{"tags":["Space Property"],"summary":"Update space property","description":"Updates a space property.The body contains the representation of the space property. Must include new version number.If the given version number is 1, attempts to create a new space property.","operationId":"update_3","parameters":[{"name":"spaceKey","in":"path","description":"The key of the space","required":true,"schema":{"type":"string"}},{"name":"key","in":"path","description":"the key of the property","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"space property to be updated","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JsonSpaceProperty"}}}},"responses":{"200":{"description":"Returns a full JSON representation of the property.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JsonSpaceProperty"}}}},"400":{"description":"Returned if the given property has a different spaceKey to the one in the path, or if the property has a different key to the one in the path, or no property value was provided, or the value is too long.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"403":{"description":"returned if the user does not have permission to edit the space with the given spaceKey.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"404":{"description":"Returned if there is no space with the given key, or no property with the given key, or if the calling user does not have permission to view the space.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"409":{"description":"Returned if the given version is does not match the expected target version of the updated property.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"413":{"description":"Returned if the value is too long.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}},"post":{"tags":["Space Property"],"summary":"Create a space property with a specific key","description":"Create a space property with a specific key.","operationId":"create_4","parameters":[{"name":"spaceKey","in":"path","description":"The key of the space","required":true,"schema":{"type":"string"}},{"name":"key","in":"path","description":"property key of the property to be created","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"space property to be created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JsonSpaceProperty"}}}},"responses":{"200":{"description":"Returns a full JSON representation of the space property.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JsonSpaceProperty"}}}},"400":{"description":"Returned if the space already has a value with the given key, or no property value was provided, or the value is too long.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"403":{"description":"Returned if the user does not have permission to edit the space with the given key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"413":{"description":"Returned if the value is too long.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}},"delete":{"tags":["Space Property"],"summary":"Delete space property","description":"Deletes a space property. \n\nExample request URI: \n\n`http://example.com/confluence/rest/api/space/TST/property/example-property-key?expand=space,version`","operationId":"delete_4","parameters":[{"name":"spaceKey","in":"path","description":"The key of the space","required":true,"schema":{"type":"string"}},{"name":"key","in":"path","description":"the key of the property.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"Returned if successfully deleted."},"404":{"description":"Returned if there is no space with the give key, property with the given property key, or if the calling user does not have permission to view the space.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/space/{spaceKey}/archive":{"put":{"tags":["Space"],"summary":"Archive space","description":"Archive the given Space identified by spaceKey. This method is idempotent i.e., if the Space is already archived then no action will be taken.","operationId":"archive","parameters":[{"name":"spaceKey","in":"path","description":"the key of the space to update.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content if the Space is archived successfully or already has status 'ARCHIVED'."},"401":{"description":"Returned if the calling user is not authenticated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"403":{"description":"Returned if the calling user does not have permission to edit the Space.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"404":{"description":" Returned if there is no space with the given key, or if the calling user does not have permission to view it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/space/{spaceKey}/content":{"get":{"tags":["Space"],"summary":"Get contents in space","description":"Returns the content in this given space. \n\nExample request URI: \n\n`http://example.com/confluence/rest/api/space/TEST/content?expand=history`","operationId":"contents","parameters":[{"name":"spaceKey","in":"path","description":"the key of the space to update.","required":true,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"a comma separated list of properties to expand on the space.","schema":{"type":"string"}},{"name":"depth","in":"query","description":"a string indicating if all content, or just the root content of the space is returned. Default value: all
. Valid values: all, root
.","schema":{"type":"string"}},{"name":"limit","in":"query","description":"the limit of the number of labels to return, this may be restricted by fixed system limits.","schema":{"type":"string"}},{"name":"start","in":"query","description":"he start point of the collection to return.","schema":{"type":"string"}}],"responses":{"200":{"description":"Returns a full JSON representation of a piece of content.","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Content"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}},"404":{"description":"Returned if there is no content with the given id, or if the calling user does not have permission to view the content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/space/{spaceKey}/content/{type}":{"get":{"tags":["Space"],"summary":"Get contents by type","description":"Returns the content in this given space with the given type. \n\nExample request URI: \n\n`http://example.com/confluence/rest/api/space/TEST/content/page?expand=history`","operationId":"contentsWithType","parameters":[{"name":"spaceKey","in":"path","description":"the key of the space to update.","required":true,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"a comma separated list of properties to expand on the space.","schema":{"type":"string"}},{"name":"depth","in":"query","description":"a string indicating if all content, or just the root content of the space is returned. Default value: all
. Valid values: all, root
.","schema":{"type":"string"}},{"name":"limit","in":"query","description":"the limit of the number of labels to return, this may be restricted by fixed system limits.","schema":{"type":"string"}},{"name":"start","in":"query","description":"he start point of the collection to return.","schema":{"type":"string"}},{"name":"type","in":"path","description":"the type of content to return with the space. Valid values: page, blogpost
.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Returns a full JSON representation of a piece of content.","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Content"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}},"404":{"description":"Returned if there is no content with the given id, or if the calling user does not have permission to view the content.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/space/_private":{"post":{"tags":["Space"],"summary":"Create private space","description":"Creates a new private Space, viewable only by its creator. The incoming Space does not include an id, but must include a Key and Name, and should include a Description.","operationId":"createPrivateSpace","requestBody":{"description":"The space to be created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Space"}}},"required":true},"responses":{"200":{"description":"Returns a full JSON representation of a space.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Space"}}}}}}},"/rest/api/space":{"get":{"tags":["Space"],"summary":"Get spaces by key","description":"Returns information about a number of spaces. \n\nExample request URI(s): \n\n`http://example.com/confluence/rest/api/space?spaceKey=TST&spaceKey=ds`","operationId":"spaces","parameters":[{"name":"spaceKeySingle","in":"query","schema":{"type":"string"}},{"name":"spaceKey","in":"query","description":"the key of the space to update.","schema":{"type":"string"}},{"name":"expand","in":"query","description":"a comma separated list of properties to expand on the spaces.","schema":{"type":"string"}},{"name":"hasRetentionPolicy","in":"query","description":"filter the list of spaces returned by retention policy.","schema":{"type":"string"}},{"name":"limit","in":"query","description":"the limit of the number of spaces to return, this may be restricted by fixed system limits","schema":{"type":"string"}},{"name":"start","in":"query","description":"the start point of the collection to return.","schema":{"type":"string"}},{"name":"label","in":"query","description":"filter the list of spaces returned by label.","schema":{"type":"string"}},{"name":"favourite","in":"query","description":"filter the list of spaces returned by favourites.","schema":{"type":"string"}},{"name":"type","in":"query","description":"filter the list of spaces returned by type (global, personal).","schema":{"type":"string"}},{"name":"status","in":"query","description":"filter the list of spaces returned by status (current, archived).","schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"string"}}}},"responses":{"200":{"description":"Returns an array of full JSON representations of found space.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Space"}}}}}},"post":{"tags":["Space"],"summary":"Creates a new Space.","description":"Creates a new Space. The incoming Space does not include an id, but must include a Key and Name, and should include a Description.","operationId":"createSpace","requestBody":{"description":"The space to be created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Space"}}},"required":true},"responses":{"200":{"description":"Returns a full JSON representation of a space.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Space"}}}}}}},"/rest/api/space/{spaceKey}":{"get":{"tags":["Space"],"summary":"Get space","description":"Returns information about a space. \n\nExample request URI: \n\n`http://example.com/confluence/rest/api/space/TST?expand=description`","operationId":"space","parameters":[{"name":"spaceKey","in":"path","description":"the key of the space to update.","required":true,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"a comma separated list of properties to expand on the space.","schema":{"type":"string"}}],"responses":{"200":{"description":"Returns a full JSON representation of a space.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Space"}}}},"404":{"description":"Returned if there is no space with the given key, or if the calling user does not have permission to view the space.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}},"put":{"tags":["Space"],"summary":"Update Space","description":"Updates a Space. The incoming Space must include a Key and Name, and should include a Description","operationId":"update_4","parameters":[{"name":"spaceKey","in":"path","description":"the key of the space to update.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"the space being updated","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Space"}}},"required":true},"responses":{"200":{"description":"Returns a full JSON representation of a space.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Space"}}}},"404":{"description":"Returned if there is no space with the given key, or if the calling userdoes not have permission to update it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}},"delete":{"tags":["Space"],"summary":"Delete Space","description":"Deletes a Space. The space is deleted in a long running task, so the space cannot be considered deleted when this resource returns. Clients can follow the status link in the response and poll it until the task completes.","operationId":"delete_5","parameters":[{"name":"spaceKey","in":"path","description":"the key of the space to update.","required":true,"schema":{"type":"string"}}],"responses":{"202":{"description":"Returns a pointer to the status of the space-deletion task.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LongTaskSubmission"}}}},"404":{"description":"Returned if there is no space with the given key, or if the calling user does not have permission to delete it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/space/{spaceKey}/restore":{"put":{"tags":["Space"],"summary":"Restore space","description":"Restore the given Space identified by spaceKey. This method is idempotent i.e., if the Space is already restored then no action will be taken.","operationId":"restore","parameters":[{"name":"spaceKey","in":"path","description":"the key of the space to update.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content if the Space is restored successfully or already has status 'CURRENT'."},"401":{"description":"Returned if the calling user is not authenticated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"403":{"description":"Returned if the calling user does not have permission to edit the Space.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"404":{"description":" Returned if there is no space with the given key, or if the calling user does not have permission to view it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/space/{spaceKey}/watchers":{"get":{"tags":["Space Watchers"],"summary":"Fetch users watching space","description":"Returns a paginated list of users watching the given Space identified by spaceKey. Only a Confluence Administrator or Space Administrator can perform this action.","operationId":"index_2","parameters":[{"name":"spaceKey","in":"path","description":"the key of the Space the User is attempting to view.","required":true,"schema":{"type":"string"}},{"name":"limit","in":"query","schema":{"type":"integer","format":"int32","default":25}},{"name":"start","in":"query","schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"returns a paginated list of users watching the given Space identified by spaceKey","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/User"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}},"401":{"description":"The user is not authenticated or does not have the LICENSED permission.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"403":{"description":"The user is not a Confluence Administrator or Space Administrator.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"404":{"description":"The Space does not exist.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/user/{username}/group/{groupName}":{"put":{"tags":["User Group"],"summary":"Update user group","description":"Add the given User identified by username to the given Group identified by groupName. \n\nThis method is idempotent i.e., if the membership already exists then no action will be taken.","operationId":"update_5","parameters":[{"name":"groupName","in":"path","description":"The group name identifying the given group.","required":true,"schema":{"type":"string"}},{"name":"username","in":"path","description":"The username identifying the given user.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content if the user is successfully added to the group"}}},"delete":{"tags":["User Group"],"summary":"Delete user group","description":"Removes the given User identified by username from the given Group identified by groupName. \n\nThis method is idempotent i.e., if the membership already exists then no action will be taken.","operationId":"delete_6","parameters":[{"name":"groupName","in":"path","description":"The group name identifying the given group.","required":true,"schema":{"type":"string"}},{"name":"username","in":"path","description":"The username identifying the given user.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content if the user is successfully removed from the group"}}}},"/rest/api/user/current/password":{"post":{"tags":["User"],"summary":"Change password","description":"Change the password for the current user. \n\n Validation Rules: \n\n- New password supplied cannot be null or blank\n\nExample request URI(s):\n\n`http://example.com/confluence/rest/api/user/current/password`","operationId":"changePassword_1","requestBody":{"description":"password change details","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PasswordChangeDetails"}}}},"responses":{"204":{"description":"returned if the password changed successfully."},"400":{"description":" returned if any error occurs while changing user password. Refer the validation rules above.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"401":{"description":"returned if the user is not authenticated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"403":{"description":"returned if current password is wrong or if the user has exceeded number of allowed failed login attempts\n.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/user/anonymous":{"get":{"tags":["User"],"summary":"Get information about anonymous user type","description":"Get information about how anonymous is represented in Confluence. Example request URI(s):\n\n`http://example.com/confluence/rest/api/user/anonymous`","operationId":"getAnonymous","parameters":[{"name":"expand","in":"query","description":"properties to expand on the user.","schema":{"type":"string"}}],"responses":{"200":{"description":"Returns a full JSON representation of a user.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Person"}}}},"403":{"description":"Returned if the calling user does not have permission to use confluence.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/user/current":{"get":{"tags":["User"],"summary":"Get current user","description":"Get information about the current logged in user. Example request URI(s):\n\n`http://example.com/confluence/rest/api/user/current`","operationId":"getCurrent","parameters":[{"name":"expand","in":"query","description":"properties to expand on the user.","schema":{"type":"string"}}],"responses":{"200":{"description":"Returns a full JSON representation of a user.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Person"}}}},"403":{"description":"Returned if the calling user does not have permission to use confluence.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/user/memberof":{"get":{"tags":["User"],"summary":"Get groups","description":"Get a paginated collection of groups that the given user is a member of. Example request URI(s):\n\n`http://example.com/confluence/rest/api/user/memberof?username=jblogs`\n`http://example.com/confluence/rest/api/user/memberof?key=402880824ff933a4014ff9345d7c0002`","operationId":"getGroups_1","parameters":[{"name":"expand","in":"query","description":"properties to expand on the user.","schema":{"type":"string"}},{"name":"limit","in":"query","description":"the limit of the number of users to return, this may be restricted by fixed system limits.","schema":{"type":"string"}},{"name":"start","in":"query","description":"the start point of the collection to return. This must be non-negative. Default value is 0.","schema":{"type":"string"}},{"name":"key","in":"query","description":"userkey of the user to request from this resource","schema":{"type":"string"}},{"name":"username","in":"query","description":"userName of the user to get the groups for.","schema":{"type":"string"}}],"responses":{"200":{"description":"Returns a full JSON representation of a user.","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Person"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}},"403":{"description":"Returned if the calling user does not have permission to use confluence.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/user":{"get":{"tags":["User"],"summary":"Get user","description":"Get information about a user identified by either user key or username. Example request URI(s):\n\n`http://example.com/confluence/rest/api/user?username=jblogs`\n`http://example.com/confluence/rest/api/user?key=402880824ff933a4014ff9345d7c0002`","operationId":"getUser","parameters":[{"name":"expand","in":"query","description":"properties to expand on the user.","schema":{"type":"string"}},{"name":"key","in":"query","description":"userkey of the user to request from this resource.","schema":{"type":"string"}},{"name":"username","in":"query","description":"userName of the user to create the new watcher for.","schema":{"type":"string"}}],"responses":{"200":{"description":"Returns a full JSON representation of a user","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Person"}}}},"403":{"description":"Returned if the calling user does not have permission to view users.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}},"404":{"description":"Returned if a user with the given username or userkey does not exist.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/user/list":{"get":{"tags":["User"],"summary":"Get registered users","description":"Gets a paginated collection of all registered users, including but not limited to:\n\n- Disabled users\n- Enabled users\n- Enabled users which count towards the license count on the site\n- Enabled users which do not count towards the license count on the site\n- Enabled users which have \"can use\" global permissions\n- Enabled users which do not have \"can use\" global permissions\n\nExample request URI(s):\n\n`http://example.com/confluence/rest/api/user/list`\n`http://example.com/confluence/rest/api/user/list?start=0`\n`http://example.com/confluence/rest/api/user/list?start=0&limit=100`\n`http://example.com/confluence/rest/api/user/list?start=0&limit=100&expand=status`","operationId":"getUsers","parameters":[{"name":"expand","in":"query","description":"properties to expand on the user.","schema":{"type":"string"}},{"name":"limit","in":"query","description":"the limit of the number of users to return, this may be restricted by fixed system limits.","schema":{"type":"string"}},{"name":"start","in":"query","description":"the start point of the collection to return. This must be non-negative. Default value is 0.","schema":{"type":"string"}}],"responses":{"200":{"description":"returns a paginated collection of users.","content":{"application/json":{"schema":{"type":"object","properties":{"pageRequest":{"$ref":"#/components/schemas/PageRequest"},"nextCursor":{"$ref":"#/components/schemas/Cursor"},"prevCursor":{"$ref":"#/components/schemas/Cursor"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Person"}},"start":{"type":"number","example":25},"limit":{"type":"number","example":25},"next":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=50"},"self":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=25"},"prev":{"type":"string","example":"http://localhost:8085/rest/api/latest/../paginate?limit=25&start=0"}}}}}},"403":{"description":"Returned if the calling user does not have permission to view users. This is possible for anonymous or un-licensed users.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/user/watch/content/{contentId}":{"get":{"tags":["User Watch"],"summary":"Get information about content watcher","description":"Get information about whether a user is watching a specified content. User is optional. If not specified, currently logged-in user will be used. Otherwise, it can be specified by either user key or username. When a user is specified and is different from the logged-in user, the logged-in user needs to be a Confluence administrator. \n\n Example request URI(s):\n\n`http://example.com/confluence/rest/api/user/watch/content/131213`\n`http://example.com/confluence/rest/api/user/watch/content/131213?username=jblogs`\n`http://example.com/confluence/rest/api/user/watch/content/131213?key=ff8080815a58e24c015a58e263710000`","operationId":"isWatchingContent","parameters":[{"name":"contentId","in":"path","description":"id of the content.","required":true,"schema":{"type":"string"}},{"name":"key","in":"query","description":"userkey of the user to check for watching state.","schema":{"type":"string"}},{"name":"username","in":"query","description":"username of the user to check for watching state.","schema":{"type":"string"}}],"responses":{"200":{"description":"Returns a JSON representation containing the watching state.","content":{"application/json":{"examples":{"watching":{"description":"watching","value":true}}}}},"404":{"description":"Returned if no content exists for the specified content id or calling user does not have permission to perform the operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}},"post":{"tags":["User Watch"],"summary":"Add content watcher","description":"Create a new watcher for the given user and content id. User is optional. If not specified, currently logged-in user will be used. Otherwise, it can be specified by either user key or username. When a user is specified and is different from the logged-in user, the logged-in user needs to be a Confluence administrator. \n\n Example request URI(s):\n\n`http://example.com/confluence/rest/api/user/watch/content/131213`\n`http://example.com/confluence/rest/api/user/watch/content/131213?username=jblogs`\n`http://example.com/confluence/rest/api/user/watch/content/131213?key=ff8080815a58e24c015a58e263710000`","operationId":"addContentWatcher","parameters":[{"name":"contentId","in":"path","description":"id of the content.","required":true,"schema":{"type":"string"}},{"name":"key","in":"query","description":"userkey of the user to check for watching state.","schema":{"type":"string"}},{"name":"username","in":"query","description":"username of the user to check for watching state.","schema":{"type":"string"}}],"responses":{"200":{"description":"Returned if the watcher was successfully created.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContentWatch"}}}},"404":{"description":"Returned if no content exists for the specified content id or the calling user does not have permission to perform the operation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}},"delete":{"tags":["User Watch"],"summary":"Remove content watcher","description":"Delete an existing watcher for the given user and content id. User is optional. If not specified, currently logged-in user will be used. Otherwise, it can be specified by either user key or username. When a user is specified and is different from the logged-in user, the logged-in user needs to be a Confluence administrator. \n\n Example request URI(s):\n\n`http://example.com/confluence/rest/api/user/watch/content/131213`\n`http://example.com/confluence/rest/api/user/watch/content/131213?username=jblogs`\n`http://example.com/confluence/rest/api/user/watch/content/131213?key=ff8080815a58e24c015a58e263710000`","operationId":"removeContentWatcher","parameters":[{"name":"contentId","in":"path","description":"id of the content.","required":true,"schema":{"type":"string"}},{"name":"key","in":"query","description":"userkey of the user to check for watching state.","schema":{"type":"string"}},{"name":"username","in":"query","description":"username of the user to check for watching state.","schema":{"type":"string"}}],"responses":{"204":{"description":"Returned if the watcher was successfully deleted"},"404":{"description":"Returned if no content exists for the specified content id or the calling user does not have permission to perform the operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}},"/rest/api/user/watch/space/{spaceKey}":{"get":{"tags":["User Watch"],"summary":"Get information about space watcher","description":"Get information about whether a user is watching a specified space. User is optional. If not specified, currently logged-in user will be used. Otherwise, it can be specified by either user key or username. When a user is specified and is different from the logged-in user, the logged-in user needs to be a Confluence administrator. \n\n Example request URI(s):\n\n`http://example.com/confluence/rest/api/user/watch/space/SPACEKEY`\n`http://example.com/confluence/rest/api/user/watch/space/SPACEKEY?username=jblogs`\n`http://example.com/confluence/rest/api/user/watch/space/SPACEKEY?key=ff8080815a58e24c015a58e263710000`\n`http://example.com/confluence/rest/api/user/watch/space/SPACEKEY?contentType=blostpost`","operationId":"isWatchingSpace","parameters":[{"name":"spaceKey","in":"path","required":true,"schema":{"type":"string"}},{"name":"contentType","in":"query","description":"an optional content type to check for watching state.","schema":{"type":"string"}},{"name":"key","in":"query","description":"userkey of the user to check for watching state.","schema":{"type":"string"}},{"name":"username","in":"query","description":"username of the user to check for watching state.","schema":{"type":"string"}}],"responses":{"200":{"description":"Returns a JSON representation containing the watching state.","content":{"application/json":{"examples":{"watching":{"description":"watching","value":true}}}}},"404":{"description":"Returned if no space exists for the specified space key or the calling user does not have permission to perform the operation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}},"post":{"tags":["User Watch"],"summary":"Add space watcher","description":"Create a new watcher for the given user and space key. User is optional. If not specified, currently logged-in user will be used. Otherwise, it can be specified by either user key or username. When a user is specified and is different from the logged-in user, the logged-in user needs to be a Confluence administrator. \n\n Example request URI(s):\n\n`http://example.com/confluence/rest/api/user/watch/space/SPACEKEY`\n`http://example.com/confluence/rest/api/user/watch/space/SPACEKEY?username=jblogs`\n`http://example.com/confluence/rest/api/user/watch/space/SPACEKEY?key=ff8080815a58e24c015a58e263710000`\n`http://example.com/confluence/rest/api/user/watch/space/SPACEKEY?contentType=blogpost`","operationId":"addSpaceWatch","parameters":[{"name":"spaceKey","in":"path","required":true,"schema":{"type":"string"}},{"name":"contentType","in":"query","description":"the optional content type to delete the watcher for.","schema":{"type":"string"}},{"name":"key","in":"query","description":"userKey of the user to create the new watcher for.","schema":{"type":"string"}},{"name":"username","in":"query","description":"userName of the user to create the new watcher for.","schema":{"type":"string"}}],"responses":{"200":{"description":"Returned if the watcher was successfully created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpaceWatch"}}}},"404":{"description":"Returned if no content exists for the specified space key or the calling user does not have permission to perform the operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}},"delete":{"tags":["User Watch"],"summary":"Remove space watcher","description":"Delete an existing watcher for the given user and space key. User is optional. If not specified, currently logged-in user will be used. Otherwise, it can be specified by either user key or username. When a user is specified and is different from the logged-in user, the logged-in user needs to be a Confluence administrator. \n\n Example request URI(s):\n\n`http://example.com/confluence/rest/api/user/watch/space/SPACEKEY`\n`http://example.com/confluence/rest/api/user/watch/space/SPACEKEY?username=jblogs`\n`http://example.com/confluence/rest/api/user/watch/space/SPACEKEY?key=ff8080815a58e24c015a58e263710000`\n`http://example.com/confluence/rest/api/user/watch/space/SPACEKEY?contentType=blogpost`","operationId":"removeSpaceWatch","parameters":[{"name":"spaceKey","in":"path","required":true,"schema":{"type":"string"}},{"name":"contentType","in":"query","description":"the optional content type to delete the watcher for.","schema":{"type":"string"}},{"name":"key","in":"query","description":"userkey of the user to delete the watcher for.","schema":{"type":"string"}},{"name":"username","in":"query","description":"username of the user to delete the watcher for.","schema":{"type":"string"}}],"responses":{"204":{"description":"Returned if the watcher was successfully deleted"},"404":{"description":"Returned if no content exists for the specified space key or the calling user does not have permission to perform the operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestError"}}}}}}}}}