Hacware Report API

The Report API from Hacware — 16 operation(s) for report.

OpenAPI Specification

hacware-report-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Security Awareness API Documentation Admin Report API
  description: This API documentation explains how to build your own AI powered security awareness and training application. HacWare is an AI-powered security awareness training and phishing simulation platform. This OpenAPI was derived by API Evangelist from HacWare's published apiDoc documentation.
  version: 1.0.4
  contact:
    name: HacWare
    email: hello@hacware.com
    url: https://hacware.com/dev.html
  termsOfService: https://hacware.com/terms-of-service
servers:
- url: https://{domain}
  description: Per-tenant HacWare API host; {domain} is the subdomain assigned to your company at onboarding.
  variables:
    domain:
      default: app.hacware.com
tags:
- name: Report
paths:
  /api/v1/report/average_days_training/:
    get:
      operationId: GetAverageDaysTraining
      summary: Average Days Training Completed
      description: Returns the average days it took for a user to fully complete training.
      tags:
      - Report
      responses:
        '200':
          description: Successful response
        '400':
          description: Bad request. The error message describes the problem.
        '401':
          description: Unauthorized. Missing or invalid bearer token.
      security:
      - bearerAuth: []
  /api/v1/org/companyreport/:
    get:
      operationId: GetCompanyReport
      summary: Retrieve Company Report
      description: 'Gets the company''s overall vulnerability to a phishing attack and identifies the behaviors that could cause a future breach. An overview of the company''s information can also be retrieved. Note: The Success 200 Fields for type=12MONTHS should not have any "_"/underscores in the actual response. It is only there due to the documentation.'
      tags:
      - Report
      parameters:
      - name: type
        in: query
        schema:
          type: string
        description: 'Type of Report (Required). Can be: 12MONTHS, RISKYBEHAVSBYDAY, CURRENTRISKYBEHAVSBYYEAR, OVERVIEW.'
        required: true
      responses:
        '200':
          description: Successful response
        '400':
          description: Bad request. The error message describes the problem.
        '401':
          description: Unauthorized. Missing or invalid bearer token.
      security:
      - bearerAuth: []
  /api/v1/report/dark_breach_report/:
    get:
      operationId: GetDarkBreachReport
      summary: Dark Breach Report
      description: Returns a list of the breached accounts by dark web. Can be filtered.
      tags:
      - Report
      parameters:
      - name: user_name
        in: query
        schema:
          type: string
        description: Filter by user's Name (Optional)
      - name: user_email
        in: query
        schema:
          type: string
        description: Filter by user's Email (Optional)
      - name: breach_account
        in: query
        schema:
          type: string
        description: Filter by breached account type. (Optional)
      - name: department
        in: query
        schema:
          type: string
        description: Filter by organization's department. - query No Department if it does not exist (Optional)
      - name: start_date
        in: query
        schema:
          type: string
        description: Starting date to search - mm/dd/yyyy (Optional)
      - name: end_date
        in: query
        schema:
          type: string
        description: Ending date to search - mm/dd/yyyy (Optional)
      - name: page_size
        in: query
        schema:
          type: string
        description: 'Size of each page. Default: 10 (Optional)'
      - name: page_num
        in: query
        schema:
          type: string
        description: 'Number of the page. Default: 1 (Optional)'
      responses:
        '200':
          description: Successful response
        '400':
          description: Bad request. The error message describes the problem.
        '401':
          description: Unauthorized. Missing or invalid bearer token.
      security:
      - bearerAuth: []
  /api/v1/report/dark_breach_count/:
    get:
      operationId: GetDarkWebBreachCount
      summary: Dark Web Breach Count
      description: Returns a list of the counts of each dark web breach for all users.
      tags:
      - Report
      responses:
        '200':
          description: Successful response
        '400':
          description: Bad request. The error message describes the problem.
        '401':
          description: Unauthorized. Missing or invalid bearer token.
      security:
      - bearerAuth: []
  /api/v1/report/export_all_phishing_history/:
    get:
      operationId: GetExportAllPhishingHistory
      summary: Export All Phishing History
      description: Exports a list of phishing failures into a CSV file. A custom email and message can be passed in using 'Email' and 'Message' headers.
      tags:
      - Report
      responses:
        '200':
          description: Successful response
        '400':
          description: Bad request. The error message describes the problem.
        '401':
          description: Unauthorized. Missing or invalid bearer token.
      security:
      - bearerAuth: []
  /api/v1/report/failed_simulation_count/:
    get:
      operationId: GetFailedSimulationsCount
      summary: Failed Simulation Count
      description: Returns a list of the counts of failed simulations by tags and device type
      tags:
      - Report
      parameters:
      - name: user_email
        in: query
        schema:
          type: string
        description: User's Email (Optional)
      - name: start_date
        in: query
        schema:
          type: string
        description: Starting date to search - mm/dd/yyyy (Optional)
      - name: end_date
        in: query
        schema:
          type: string
        description: Ending date to search - mm/dd/yyyy (Optional)
      responses:
        '200':
          description: Successful response
        '400':
          description: Bad request. The error message describes the problem.
        '401':
          description: Unauthorized. Missing or invalid bearer token.
      security:
      - bearerAuth: []
  /api/v1/report/failed_simulation_report/:
    get:
      operationId: GetFailedSimulationsReport
      summary: Failed Simulation Report
      description: Returns a list of the counts of each type of failed simulation filtered by date ranges.
      tags:
      - Report
      parameters:
      - name: user_email
        in: query
        schema:
          type: string
        description: User's Email (Optional)
      - name: period_range
        in: query
        schema:
          type: string
        description: 'Date range of the report: today, week, month, year. Default: today (Optional)'
      responses:
        '200':
          description: Successful response
        '400':
          description: Bad request. The error message describes the problem.
        '401':
          description: Unauthorized. Missing or invalid bearer token.
      security:
      - bearerAuth: []
  /api/v1/report/multiple_failure_count/:
    get:
      operationId: GetMultipleFailureCount
      summary: Multiple Failure Count
      description: Retrieve a detailed count of all the failures and training data of users that have failed phishing simulations multiple times. Organized by date ranges.
      tags:
      - Report
      parameters:
      - name: start_date
        in: query
        schema:
          type: string
        description: Starting date to search - mm/dd/yyyy (Optional)
      - name: end_date
        in: query
        schema:
          type: string
        description: Ending date to search - mm/dd/yyyy (Optional)
      - name: phishing_status
        in: query
        schema:
          type: string
        description: Filter by phishing status - active or inactive. (Optional)
      responses:
        '200':
          description: Successful response
        '400':
          description: Bad request. The error message describes the problem.
        '401':
          description: Unauthorized. Missing or invalid bearer token.
      security:
      - bearerAuth: []
  /api/v1/report/multiple_failure_report/:
    get:
      operationId: GetMultipleFailureReport
      summary: Multiple Failure Report
      description: Retrieve a detailed report of users that have failed multiple (More than 1) phishing simulations.
      tags:
      - Report
      parameters:
      - name: user_keyword
        in: query
        schema:
          type: string
        description: Filter by user's name or email. (Optional)
      - name: start_date
        in: query
        schema:
          type: string
        description: Starting date to search - mm/dd/yyyy (Optional)
      - name: end_date
        in: query
        schema:
          type: string
        description: Ending date to search - mm/dd/yyyy (Optional)
      - name: phishing_status
        in: query
        schema:
          type: string
        description: Filter by phishing status - active or inactive. (Optional)
      - name: department
        in: query
        schema:
          type: string
        description: Filter by organization's department. - query No Department if it does not exist (Optional)
      - name: page_size
        in: query
        schema:
          type: string
        description: Amount of entries per page Defaults to all. (Optional)
      - name: page_num
        in: query
        schema:
          type: string
        description: Page number. Defaults to page 1. (Optional)
      responses:
        '200':
          description: Successful response
        '400':
          description: Bad request. The error message describes the problem.
        '401':
          description: Unauthorized. Missing or invalid bearer token.
      security:
      - bearerAuth: []
  /api/v1/report/export_failures/:
    get:
      operationId: GetPhishingFailures
      summary: Export Phishing Failures. A custom email and message can be passed in using 'Email' and 'Message' headers.
      description: Exports a list of phishing failures into a CSV file.
      tags:
      - Report
      responses:
        '200':
          description: Successful response
        '400':
          description: Bad request. The error message describes the problem.
        '401':
          description: Unauthorized. Missing or invalid bearer token.
      security:
      - bearerAuth: []
  /api/v1/report/report-summary/:
    get:
      operationId: GetReportSummary
      summary: Report Summary
      description: Retrieve a overall summary of all the emails being sent out to your users.
      tags:
      - Report
      parameters:
      - name: start_date
        in: query
        schema:
          type: string
        description: Starting date to search - mm/dd/yyyy (Optional)
      - name: end_date
        in: query
        schema:
          type: string
        description: Ending date to search - mm/dd/yyyy (Optional)
      - name: phishing_status
        in: query
        schema:
          type: string
        description: Filter by phishing status - active or inactive. (Optional)
      - name: department_access
        in: query
        schema:
          type: string
        description: Filter by department based on email of admin. (Optional)
      responses:
        '200':
          description: Successful response
        '400':
          description: Bad request. The error message describes the problem.
        '401':
          description: Unauthorized. Missing or invalid bearer token.
      security:
      - bearerAuth: []
  /api/v1/report/training_report/:
    get:
      operationId: GetTrainingReport
      summary: Training Report
      description: Returns a list of the trainings. Can be filtered by user email or completion status
      tags:
      - Report
      parameters:
      - name: user_email
        in: query
        schema:
          type: string
        description: User's Email (Optional)
      - name: courseTitle
        in: query
        schema:
          type: string
        description: Filter by Course name using keywords (Optional)
      - name: quizTitle
        in: query
        schema:
          type: string
        description: Filter by Quiz name used using keywords (Optional)
      - name: start_date
        in: query
        schema:
          type: string
        description: Starting date to search - mm/dd/yyyy (Optional)
      - name: end_date
        in: query
        schema:
          type: string
        description: Ending date to search - mm/dd/yyyy (Optional)
      - name: complete
        in: query
        schema:
          type: string
        description: Filter by complete or incomplete trainings - True or False (Optional)
      - name: department
        in: query
        schema:
          type: string
        description: Filter by user department - departments are queried from the database (Optional)
      - name: lessonPlan
        in: query
        schema:
          type: string
        description: Filter courses by different lesson plans - lesson plans are queried from the database (Optional)
      - name: page_size
        in: query
        schema:
          type: string
        description: Amount of entries per page (Optional)
      - name: page_num
        in: query
        schema:
          type: string
        description: Page number (Optional)
      responses:
        '200':
          description: Successful response
        '400':
          description: Bad request. The error message describes the problem.
        '401':
          description: Unauthorized. Missing or invalid bearer token.
      security:
      - bearerAuth: []
  /api/v1/report/user_addon_count/:
    get:
      operationId: GetUserAddOnCount
      summary: User Reporter Add-on Count
      description: Retrieve a basic count of all successful reports on phishing simulations using the reporter Add-on. Only used for Outlook and Gmail Tenants.
      tags:
      - Report
      responses:
        '200':
          description: Successful response
        '400':
          description: Bad request. The error message describes the problem.
        '401':
          description: Unauthorized. Missing or invalid bearer token.
      security:
      - bearerAuth: []
  /api/v1/report/user_addon_report/:
    get:
      operationId: GetUserAddonReport
      summary: User Reporter Add-on Report
      description: Retrieve a detailed report of all successful reports on phishing simulations using the reporter Add-on. Only used for Outlook and Gmail Tenants.
      tags:
      - Report
      parameters:
      - name: user_keyword
        in: query
        schema:
          type: string
        description: Filter by user's name or email. (Optional)
      - name: start_date
        in: query
        schema:
          type: string
        description: Starting date to search - mm/dd/yyyy (Optional)
      - name: end_date
        in: query
        schema:
          type: string
        description: Ending date to search - mm/dd/yyyy (Optional)
      - name: phishing_status
        in: query
        schema:
          type: string
        description: Filter by phishing status - active or inactive. (Optional)
      - name: department
        in: query
        schema:
          type: string
        description: Filter by organization's department. - query No Department if it does not exist (Optional)
      - name: page_size
        in: query
        schema:
          type: string
        description: Amount of entries per page Defaults to all. (Optional)
      - name: page_num
        in: query
        schema:
          type: string
        description: Page number. Defaults to page 1. (Optional)
      responses:
        '200':
          description: Successful response
        '400':
          description: Bad request. The error message describes the problem.
        '401':
          description: Unauthorized. Missing or invalid bearer token.
      security:
      - bearerAuth: []
  /api/v1/phish/summary/:
    get:
      operationId: PhishSummary
      summary: Show Phish Summary Report
      description: Get a phish summary report for the company. The report will analyze the how the company is doing responding to phishing simulations.
      tags:
      - Report
      parameters:
      - name: start_date
        in: query
        schema:
          type: string
        description: Starting date to search (Required)
        required: true
      - name: end_date
        in: query
        schema:
          type: string
        description: Ending date to search (Required)
        required: true
      - name: user_email
        in: query
        schema:
          type: string
        description: User's Email (Optional)
      responses:
        '200':
          description: Successful response
        '400':
          description: Bad request. The error message describes the problem.
        '401':
          description: Unauthorized. Missing or invalid bearer token.
      security:
      - bearerAuth: []
  /api/v1/report/partial_completed_count/:
    get:
      operationId: getPartialCompletedTrainingCount
      summary: Partial Completed Training Count
      description: Returns a list of the count number of partially or completed training
      tags:
      - Report
      responses:
        '200':
          description: Successful response
        '400':
          description: Bad request. The error message describes the problem.
        '401':
          description: Unauthorized. Missing or invalid bearer token.
      security:
      - bearerAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Bearer access token obtained from POST /api/v1/auth/ (exchange appid + secret key). Tokens expire ~1 hour after issue; use the refresh token to renew.
externalDocs:
  description: HacWare API Documentation
  url: https://www.hacware.com/doc/index.html