> ## Documentation Index
> Fetch the complete documentation index at: https://docs.zeal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create KYC Summary Report

> Create a report containing KYC flagged workers by company.

<Note>
  This endpoint is subject to frequent changes.
</Note>

Creates a KYC Summary report, returning KYC flagged workers for a specified company and utilizing optional filters such as employment status or KYC status.

This endpoint returns a `job_id` instead of the raw data itself. Because the data returned can be large, Zeal uses a job queue to process the report instead of returning it synchronously. Once the [job status](/reference/reports/get-job-status) is marked as **complete**, the report can be downloaded using the [Get Report Download](/reference/reports/get-report-download) endpoint.

### Example Response - 200

```json theme={null}
{
  "success": true,
  "data": {
    "job_id": "707ce36e-2267-2088-9fc4-c34d57c69c72",
    "status": "pending",
    "request_body": {
      "companyID": "fe93448eueowej923474124eeze9",
      "employment_status": "live",
      "kyc_status": "all",
      "media_type": "csv"
    },
    "created_at": "2024-02-29T18:21:28.951Z"
  }
}
```

### Example Response - 400

```json theme={null}
{
  "success": false,
  "errors": [
    {
      "message": "Must provide a valid companyID",
      "code": 50
    }
  ]
}
```


## OpenAPI

````yaml openapi/zeal-api.json post /reports/kyc-summary
openapi: 3.1.0
info:
  title: zeal-api
  version: '1.0'
servers:
  - url: https://api.zeal.com
security:
  - sec0: []
paths:
  /reports/kyc-summary:
    post:
      description: Create a report containing KYC flagged workers by company.
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                companyID:
                  type: string
                  description: ID of the Company
                employment_status:
                  type: string
                  description: Filters the report by workers' employment status
                  enum:
                    - live
                    - leave
                    - terminated
                kyc_status:
                  type: string
                  description: Filters the report by KYC status
                  enum:
                    - all
                    - failed
                    - approved
                media_type:
                  type: string
                  description: The media type of the report
                  default: csv
              required:
                - companyID
                - employment_status
                - media_type
      responses:
        '200':
          description: '200'
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                  data:
                    type: object
                    description: job_id for the KYC Summary Report
        '400':
          description: '400'
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: false
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        message:
                          type: string
                        code:
                          type: integer
      deprecated: false
components:
  securitySchemes:
    sec0:
      type: apiKey
      in: header
      name: Authorization
      x-bearer-format: bearer

````