{
  "key": "keep-it-up-to-date",
  "name": "Keep it up to date!",
  "description": "Generates a list of inactive pages that have not been updated in a while and should be checked to make sure the information is still up to date.",
  "vendor": {
    "name": "Phase Locked Software",
    "url": "https://www.phaselockedsoftware.com"
  },
  "links": {
    "self": "https://keep2.phaselockedsoftware.com/atlassian-connect.json",
    "homepage": "https://www.phaselockedsoftware.com/en/keep-it-up-to-date/",
    "documentation": "https://www.phaselockedsoftware.com/en/keep-it-up-to-date/documentation/"
  },
  "baseUrl": "https://keep2.phaselockedsoftware.com",
  "authentication": {
    "type": "none"
  },
  "scopes": [
    "READ"
  ],
  "apiMigrations":{
    "signed-install": true
  },
  "modules": {
    "dynamicContentMacros": [
      {
        "url": "/remotes/connect/src/html/outdated-pages.html?space-key={space.key}&page-id={page.id}&max-results={p-max-results}&older-than-days={p-older-than-days}&space-key-conf={p-space-key}&page-descendants={p-page-descendants}&labels-to-ignore={p-labels-to-ignore}&labels-req={p-labels-req}&content-state={content-state}&page-owner={page-owner}",
        "description": {
          "value": "Generates a list of inactive pages that have not been updated in a while and should be checked to make sure the information is still up to date."
        },
        "name": {
          "value": "Keep it up to date!"
        },
        "icon": {
          "url": "/img/logo/logo-color.svg"
        },
        "key": "keep-it-up-to-date-macro",
        "parameters": [
          {
            "identifier": "p-max-results",
            "name": {
              "value": "Maximum amount of pages to display (max 10000)"
            },
            "type": "int",
            "required": true,
            "multiple": false,
            "defaultValue": "10",
            "hidden": false
          },
          {
            "identifier": "p-older-than-days",
            "name": {
              "value": "Show pages not updated for longer than this amount of days"
            },
            "type": "int",
            "required": true,
            "multiple": false,
            "defaultValue": "150",
            "hidden": false
          },
          {
            "identifier": "p-space-key",
            "name": {
              "value": "The Confluence space to check for outdated pages"
            },
            "description": {
              "value": "Restrict checking for outdated pages to a specific space."
            },
            "type": "spacekey",
            "required": false,
            "multiple": false,
            "defaultValue": "{space.key}",
            "hidden": false
          },
          {
            "identifier": "p-page-descendants",
            "name": {
              "value": "Restrict to descendants of this page"
            },
            "description": {
              "value": "If no space is selected and this checkbox is not checked, all pages in all spaces are checked."
            },
            "type": "boolean",
            "required": false,
            "multiple": false,
            "defaultValue": "",
            "hidden": false
          },
          {
            "identifier": "p-labels-to-ignore",
            "name": {
              "value": "Page labels to ignore"
            },
            "description": {
              "value": "Some pages simply never need updating. Like release notes, meeting notes, archived content, etc. Mark them with a label to keep them off the outdated lists"
            },
            "type": "label",
            "required": false,
            "multiple": true,
            "hidden": false
          },
          {
            "identifier": "p-labels-req",
            "name": {
              "value": "Page labels to include"
            },
            "description": {
              "value": "Page labels required to include the pages in the results"
            },
            "type": "label",
            "required": false,
            "multiple": true,
            "hidden": false
          },
          {
            "identifier": "content-state",
            "name": {
              "value": "Show the page content status"
            },
            "description": {
              "value": "Show the published content status of a page (if set)."
            },
            "type": "boolean",
            "required": false,
            "multiple": false,
            "defaultValue": "true",
            "hidden": false
          },
          {
            "identifier": "page-owner",
            "name": {
              "value": "Show the page owner"
            },
            "description": {
              "value": "Show the page owner."
            },
            "type": "boolean",
            "required": false,
            "multiple": false,
            "defaultValue": "true",
            "hidden": false
          }
        ]
      },
      {
        "url": "/remotes/connect/src/html/legacy-editor.html?space-key={space.key}&page-id={page.id}&max-results={p-max-results}&older-than-days={p-older-than-days}&space-key-conf={p-space-key}&page-descendants={p-page-descendants}&labels-to-ignore={p-labels-to-ignore}&labels-req={p-labels-req}&content-state={content-state}&page-owner={page-owner}",
        "description": {
          "value": "Generates a list of pages using the deprecated Legacy Editor."
        },
        "name": {
          "value": "Keep it up to date legacy editor app!"
        },
        "icon": {
          "url": "/img/logo/logo-color.svg"
        },
        "key": "keep-it-up-to-date-legacy-editor-macro",
        "parameters": [
          {
            "identifier": "p-max-results",
            "name": {
              "value": "Maximum amount of pages to display (max 10000)"
            },
            "type": "int",
            "required": true,
            "multiple": false,
            "defaultValue": "10",
            "hidden": false
          },
          {
            "identifier": "p-older-than-days",
            "name": {
              "value": "Show pages not updated for longer than this amount of days"
            },
            "type": "int",
            "required": true,
            "multiple": false,
            "defaultValue": "150",
            "hidden": false
          },
          {
            "identifier": "p-space-key",
            "name": {
              "value": "The Confluence space to check for outdated pages"
            },
            "description": {
              "value": "Restrict checking for outdated pages to a specific space."
            },
            "type": "spacekey",
            "required": false,
            "multiple": false,
            "defaultValue": "{space.key}",
            "hidden": false
          },
          {
            "identifier": "p-page-descendants",
            "name": {
              "value": "Restrict to descendants of this page"
            },
            "description": {
              "value": "If no space is selected and this checkbox is not checked, all pages in all spaces are checked."
            },
            "type": "boolean",
            "required": false,
            "multiple": false,
            "defaultValue": "",
            "hidden": false
          },
          {
            "identifier": "p-labels-to-ignore",
            "name": {
              "value": "Page labels to ignore"
            },
            "description": {
              "value": "Some pages need no updating. Mark them with a label to keep them off the outdated lists"
            },
            "type": "label",
            "required": false,
            "multiple": true,
            "hidden": false
          },
          {
            "identifier": "p-labels-req",
            "name": {
              "value": "Page labels to include"
            },
            "description": {
              "value": "Page labels required to include the pages in the results"
            },
            "type": "label",
            "required": false,
            "multiple": true,
            "hidden": false
          },
          {
            "identifier": "content-state",
            "name": {
              "value": "Show the page content status"
            },
            "description": {
              "value": "Show the published content status of a page (if set)."
            },
            "type": "boolean",
            "required": false,
            "multiple": false,
            "defaultValue": "true",
            "hidden": false
          },
          {
            "identifier": "page-owner",
            "name": {
              "value": "Show the page owner"
            },
            "description": {
              "value": "Show the page owner."
            },
            "type": "boolean",
            "required": false,
            "multiple": false,
            "defaultValue": "true",
            "hidden": false
          }
        ]
      }
    ],
    "generalPages": [
      {
        "key": "keep-page-confluence",
        "location": "system.header/left",
        "name": {
          "value": "Keep it up to date!"
        },
        "url": "/remotes/connect/src/html/keep-page?isAdmin={condition.user_is_admin}",
        "conditions": [
          {
            "condition": "user_is_logged_in"
          }
        ],
        "icon": {
          "url": "/img/logo/logo-bw.svg"
        }
      }
    ],
    "postInstallPage": {
      "key": "postinstall-page",
      "name": {
        "value": "Keep it up to date! Installation Information"
      },
      "conditions": [
        {
          "condition": "user_is_admin"
        }
      ],
      "url": "/remotes/connect/src/html/postinstall"
    }
  }
}
