type: object
properties:
  id:
    type: string
    description: The approval id.
    example: id12345
  name:
    type: string
    description: The name of the approval.
    example: aName
  created:
    type: string
    format: 'date-time'
    description: When the approval was created.
    example: '2017-07-11T18:45:37.098Z'
  modified:
    type: string
    format: 'date-time'
    description: When the approval was modified last time.
    example: '2018-07-25T20:22:28.104Z'
  requestCreated:
    type: string
    format: 'date-time'
    description: When the access-request was created.
    example: '2017-07-11T18:45:35.098Z'
  requestType:
    $ref: './AccessRequestType.yaml'
    description: If the access-request was for granting or revoking access.
  requester:
    $ref: './BaseReferenceDto.yaml'
    description: The identity that requested the item.
  requestedFor:
    $ref: './BaseReferenceDto.yaml'
    description: The identity for whom the item is requested for.
  owner:
    $ref: './BaseReferenceDto.yaml'
    description: The owner or approver of the approval.
  requestedObject:
    $ref: './RequestableObjectReference.yaml'
    description: The requested access item.
  requesterComment:
    $ref: './CommentDto.yaml'
    description: The requester's comment.
  previousReviewersComments:
    type: array
    items:
      $ref: './CommentDto.yaml'
    description: The history of the previous reviewers comments.
  forwardHistory:
    type: array
    items:
      $ref: './ApprovalForwardHistory.yaml'
    description: The history of approval forward action.
  commentRequiredWhenRejected:
    type: boolean
    description: When true the rejector has to provide comments when rejecting
    example: true
  actionInProcess:
    $ref: './PendingApprovalAction.yaml'
    description: Action that is performed on this approval, and system has not finished performing that action yet.
  removeDate:
    type: string
    description: The date the role or access profile is no longer assigned to the specified identity.
    format: 'date-time'
    example: '2020-07-11T00:00:00Z'
  removeDateUpdateRequested:
    type: boolean
    description: If true, then the request is to change the remove date or sunset date.
    example: true
  currentRemoveDate:
    type: string
    description: The remove date or sunset date that was assigned at the time of the request.
    format: 'date-time'
    example: '2020-07-11T00:00:00Z'
  sodViolationContext:
    $ref: './SodViolationContextCheckCompleted.yaml'
    description: The details of the SOD violations for the associated approval.
