Page tree
Skip to end of metadata
Go to start of metadata

View the complete public API of the App.

openapi: 3.0.0
servers:
  - url: 'https://jira.example.com/'
info:
  version: 3.0.0
  title: 'Cleaner for Jira REST API'
  description: 'The Cleaner for Jira app helps you manage your Jira system and make sure there are no unused elements which could be affecting the performance or cost of your Jira instance. Use the REST API to access the configuration item manifest and other functions remotely.'
  contact:
    name: Support
    url: 'https://remote.automation-consultants.com/jira/servicedesk/customer/portal/3'
    email: plugins@automation-consultants.com
paths:
  /rest/cleaner/1.0/manifest/projects:
    get:
      description: 'Get a list of all Projects in the system.'
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Project'
  /rest/cleaner/1.0/manifest/custom-fields:
    get:
      description: "\nGet a list of all Custom Fields in system, including statistics and\nproperties."
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CustomField'
  /rest/cleaner/1.0/manifest/issue-types:
    get:
      description: 'Get a list of Issue Types.'
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IssueType'
  /rest/cleaner/1.0/manifest/inactive-users:
    get:
      description: "\nGet a list of all Users who are considered inactive, from your saved\nsettings."
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/User'
  /rest/cleaner/1.0/manifest/issue-link-types:
    get:
      description: 'Get a list of Issue Link Types, including statistics.'
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IssueLinkType'
  /rest/cleaner/1.0/manifest/issue-security-schemes:
    get:
      description: 'Get a list of Issue Security Schemes.'
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IssueSecurityScheme'
  /rest/cleaner/1.0/manifest/issue-type-schemes:
    get:
      description: 'Get a list of Issue Type Schemes.'
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IssueTypeScheme'
  /rest/cleaner/1.0/manifest/issue-type-screen-schemes:
    get:
      description: 'Get a list of Issue Type Screen Schemes.'
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IssueTypeScreenScheme'
  /rest/cleaner/1.0/manifest/notification-schemes:
    get:
      description: 'Get a list of Notification Schemes.'
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/NotificationScheme'
  /rest/cleaner/1.0/manifest/permission-schemes:
    get:
      description: 'Get a list of Permission Schemes.'
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PermissionScheme'
  /rest/cleaner/1.0/manifest/priorities:
    get:
      description: 'Get a list of Priorities.'
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Priority'
  /rest/cleaner/1.0/manifest/resolutions:
    get:
      description: 'Get a list of Resolutions.'
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Resolution'
  /rest/cleaner/1.0/manifest/screen-schemes:
    get:
      description: 'Get a list of Screen Schemes.'
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ScreenScheme'
  /rest/cleaner/1.0/manifest/screens:
    get:
      description: 'Get a list of Screens.'
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Screen'
  /rest/cleaner/1.0/manifest/statuses:
    get:
      description: 'Get a list of Statuses.'
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Status'
  /rest/cleaner/1.0/manifest/workflow-schemes:
    get:
      description: 'Get a list of Workflow Schemes.'
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/WorkflowScheme'
  /rest/cleaner/1.0/manifest/workflows:
    get:
      description: 'Get a list of Workflows.'
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Workflow'
  /rest/cleaner/1.0/history:
    get:
      description: "\nGet the last 20 days history for Projects, Issue Types and other\nconfiguration items, taken automatically on a schedule by the App."
      responses:
        '200':
          description: OK
          headers: {}
  /rest/cleaner/1.0/license-summary:
    get:
      description: "\nGet a summary of current used licenses in each Jira Application, which\nshows how many licenses are being used by inactive users (users who have\nnot logged in recently according to your settings."
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LicenseSummary'
  /rest/cleaner/1.0/log:
    get:
      description: 'Get the Audit Log entries from a certain point in time.'
      parameters:
        -
          name: startAt
          description: 'Where to start at'
          in: query
          required: true
          schema:
            type: integer
      responses:
        '200':
          description: OK
          headers: {}
  /rest/cleaner/1.0/statistics:
    get:
      description: "\nGet High-Level Statistics on configuration item usage, highlighting\nareas that can be improved."
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StatisticsJson'
components:
  schemas:
    CrossReference:
      properties:
        name:
          example: 'Configuration Item Name'
          type: string
        url:
          example: '/jira/secure/admin/ConfigureFieldScreen.jspa?id=10003'
          type: string
      type: object
    IssueTypeScheme:
      properties:
        id:
          type: number
          example: 10108
        name:
          type: string
          example: 'Example Issue Type Scheme'
        issueTypeCount:
          type: number
          example: 1
        projectCount:
          type: number
          example: 1
      type: object
    IssueTypeScreenScheme:
      properties:
        id:
          type: number
          example: 20108
        name:
          type: string
          example: 'Example Issue Type Screen Scheme'
        projectCount:
          type: number
          example: 1
      type: object
    LicenseSummary:
      properties:
        core:
          type: number
        unusedCore:
          type: number
        software:
          type: number
        unusedSoftware:
          type: number
        serviceDesk:
          type: number
        unusedServiceDesk:
          type: number
      type: object
    RequestJson:
      properties:
        type:
          type: string
        entities:
          type: array
          items: {}
        stringEntities:
          type: array
          items: {}
      type: object
    StatisticsJson:
      properties:
        projects:
          type: number
        emptyProjects:
          type: number
        customFields:
          type: number
        emptyCustomFields:
          type: number
        issueTypes:
          type: number
        emptyIssueTypes:
          type: number
        issueTypeSchemes:
          type: number
        emptyIssueTypeSchemes:
          type: number
        workflowSchemes:
          type: number
        emptyWorkflowSchemes:
          type: number
        workflows:
          type: number
        emptyWorkflows:
          type: number
        issueTypeScreenSchemes:
          type: number
        emptyIssueTypeScreenSchemes:
          type: number
        screenSchemes:
          type: number
        screenSchemesEmpty:
          type: number
        screens:
          type: number
        emptyScreens:
          type: number
        statuses:
          type: number
        emptyStatuses:
          type: number
        resolutions:
          type: number
        emptyResolutions:
          type: number
        priorities:
          type: number
        emptyPriorities:
          type: number
      type: object
    SettingsJson:
      properties:
        rememberMePeriod:
          type: number
        inactivePeriod:
          type: number
        acProjectLimit:
          type: number
        acIssueTypeLimit:
          type: number
        cron:
          type: string
      type: object
    Analytics:
      properties:
        projects:
          type: number
        customFields:
          type: number
        workflowSchemes:
          type: number
        statuses:
          type: number
        screenSchemes:
          type: number
        issueTypes:
          type: number
        issueTypeScreenSchemes:
          type: number
        screens:
          type: number
        workflows:
          type: number
        issueTypeSchemes:
          type: number
        users:
          type: number
      type: object
    NestedType:
      properties:
        id:
          type: number
        name:
          type: string
        suggestedContext:
          $ref: '#/components/schemas/NestedType'
      type: object
    Project:
      properties:
        id:
          type: number
          example: 10000
        name:
          type: string
          example: 'My Cool Project Name'
        key:
          type: string
          example: MKPN
        lead:
          type: string
          example: username
        avatar:
          type: number
          example: 10000
        count:
          type: number
          example: 10
        lastUpdated:
          type: number
          example: 1519576974
      type: object
    IssueType:
      properties:
        id:
          type: number
          example: 10002
        name:
          type: string
          example: Epic
        description:
          type: string
          example: gh.issue.epic.desc
        count:
          type: number
          example: 10
      type: object
    CustomField:
      properties:
        id:
          type: number
          example: 10000
        name:
          type: string
          example: Sprint
        type:
          type: string
          example: 'JIRA Sprint Field'
        associationSummary:
          type: string
          example: Global
        global:
          type: boolean
          example: true
        screens:
          type: number
          example: 2
        values:
          type: number
          example: 0
      type: object
    User:
      properties:
        key:
          type: string
          example: admin
        userName:
          type: string
          example: admin
        displayName:
          type: string
          example: Administrator
        core:
          type: boolean
          example: false
        software:
          type: boolean
          example: true
        servicedesk:
          type: boolean
          example: true
        email:
          type: string
          example: admin@admin.com
        avatar:
          type: number
          example: 0
        lastLogin:
          type: number
          example: 1519572150003
      type: object
    TopIdJson:
      properties:
        id:
          type: number
      type: object
    IssueLinkType:
      properties:
        id:
          type: number
          example: 10000
        name:
          type: string
          example: Blocks
        incomingLabel:
          type: string
          example: 'is blocked by'
        outgoingLabel:
          type: string
          example: blocks
        count:
          type: number
          example: 0
      type: object
    IssueSecurityScheme:
      properties:
        id:
          type: number
          example: 10000
        name:
          type: string
          example: 'Default Issue Security Scheme'
        entityCount:
          type: number
          example: 0
        projectCount:
          type: number
          example: 0
      type: object
    NotificationScheme:
      properties:
        id:
          type: number
          example: 10000
        name:
          type: string
          example: 'Default Notification Scheme'
        entityCount:
          type: number
          example: 48
        projectCount:
          type: number
          example: 2
      type: object
    PermissionScheme:
      properties:
        id:
          type: number
          example: 10000
        name:
          type: string
          example: 'Default Permission Scheme'
        projectCount:
          type: number
          example: 2
      type: object
    Priority:
      properties:
        id:
          type: number
          example: 1
        name:
          type: string
          example: Highest
        colour:
          type: string
          example: '#d04437'
        icon:
          type: string
          example: /images/icons/priorities/highest.png
        isDefault:
          type: boolean
          example: false
        issueCount:
          type: number
          example: 0
      type: object
    Resolution:
      properties:
        id:
          type: number
          example: 10000
        name:
          type: string
          example: Done
        description:
          type: string
          example: 'Work has been completed on this issue.'
        isDefault:
          type: boolean
          example: false
        issueCount:
          type: number
          example: 0
      type: object
    ScreenScheme:
      properties:
        id:
          type: number
          example: 1
        name:
          type: string
          example: 'Default Screen Scheme'
        issueTypeScreenSchemeCount:
          type: number
          example: 1
      type: object
    Screen:
      properties:
        id:
          type: number
          example: 1
        name:
          type: string
          example: 'Default Screen'
        customFieldCount:
          type: number
          example: 0
        workflowCount:
          type: number
          example: 0
        screenSchemeCount:
          type: number
          example: 1
      type: object
    Status:
      properties:
        id:
          type: number
          example: 1
        name:
          type: string
          example: Open
        category:
          type: string
          example: New
        workflowCount:
          type: number
          example: 2
        issueCount:
          type: number
          example: 0
      type: object
    WorkflowScheme:
      properties:
        id:
          type: number
          example: 10000
        name:
          type: string
          example: 'Ny Workflow Scheme'
        projectCount:
          type: number
          example: 5
      type: object
    Workflow:
      properties:
        id:
          type: number
          example: 10000
        name:
          type: string
          example: 'Management Workflow'
        author:
          type: string
          example: admin
        lastUpdated:
          type: number
          example: 1519572150003
        workflowSchemeCount:
          type: number
          example: 0
      type: object


  • No labels