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

# Employee Consent

> API to submit or update employee consent data.



## OpenAPI

````yaml POST /api/v1/employee/consent-data/
openapi: 3.0.0
info:
  title: Employee List API
  description: Retrieve a paginated list of employees from the organization.
  version: 1.0.0
servers:
  - url: https://{env}.tartanhq.com
    description: Dynamic environment-based server
    variables:
      env:
        default: dev
security: []
paths:
  /api/v1/employee/consent-data/:
    post:
      summary: Submit Employee Consent Data
      description: API to submit or update employee consent data.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                org:
                  type: string
                  format: uuid
                  description: Organization UUID
                  example: 9e3ba089-5cb6-407c-93db-e3b7ccaff3ed
                employee_id:
                  type: string
                  description: Unique employee ID within the organization
                  example: '0078'
                consent_language:
                  type: string
                  description: Consent statement or text given by the employee
                  example: I have new consent.
                consent_timestamp:
                  type: string
                  format: date-time
                  description: Timestamp when the consent was given
                  example: '2024-11-20T10:30:00Z'
                consent_expiry:
                  type: string
                  format: date-time
                  description: Consent expiration datetime
                  example: '2024-11-28T10:30:00Z'
              required:
                - org
                - employee_id
                - consent_language
                - consent_timestamp
                - consent_expiry
      responses:
        '200':
          description: Employee details retrieved successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  requestId:
                    type: string
                    example: d4e04a3f-08c2-45bd-a7de-ea37fc632a1f
                  message:
                    type: string
                    example: success
                  data:
                    $ref: '#/components/schemas/Employee'
        '400':
          description: Bad Request – Validation Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  requestId:
                    type: string
                    example: 8fae81c0-194c-45a2-a077-e6e4fc3fb6d1
                  message:
                    type: string
                    example: error
                  data:
                    type: object
                    properties:
                      consent_expiry:
                        type: array
                        items:
                          type: string
                        example:
                          - >-
                            The consent expiry timestamp must be in the future.
                            Please provide a valid timestamp.
        '401':
          description: Unauthorized – Authentication credentials missing
          content:
            application/json:
              schema:
                type: object
                properties:
                  requestId:
                    type: string
                    example: a337d820-3661-4ddd-a2fe-6da518b87935
                  message:
                    type: string
                    example: Authentication credentials were not provided.
                  data:
                    type: string
                    nullable: true
                    example: null
        '404':
          description: Not Found – Employee not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  requestId:
                    type: string
                    example: 0aaf653a-148e-4cbf-8346-742de60bb2c9
                  message:
                    type: string
                    example: Employee not found
                  data:
                    type: string
                    nullable: true
                    example: null
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  requestId:
                    type: string
                    example: be2915d5-fc30-4d13-bcca-3d62aefac2a0
                  message:
                    type: string
                    example: Internal Server Error
                  data:
                    type: string
                    nullable: true
                    example: null
      security:
        - TokenAuth: []
components:
  schemas:
    Employee:
      type: object
      properties:
        id:
          type: string
          example: '7'
        employeeId:
          type: string
          example: '5'
        name:
          type: string
          example: Manas Mallik
        email:
          type: string
          format: email
          nullable: true
          example: manas@tartanhq.com
        personalEmail:
          type: string
          format: email
          nullable: true
          example: manas.mallik@gmail.com
        doj:
          type: string
          format: date
          example: '2021-06-01'
        dob:
          type: string
          format: date
          nullable: true
          example: '1983-06-08'
        status:
          type: string
          enum:
            - Active
            - Inactive
            - Terminated
          example: Active
        employmentType:
          type: string
          nullable: true
          example: Permanent
        gender:
          type: string
          example: Male
        pan:
          type: string
          description: Masked PAN
          nullable: true
          example: '************'
        aadhar:
          type: string
          description: Masked Aadhaar
          nullable: true
          example: '************'
        uan:
          type: string
          description: Masked UAN
          nullable: true
          example: '************'
        mobileNumber:
          type: string
          description: Masked mobile number
          nullable: true
          example: '************'
        maritalStatus:
          type: string
          nullable: true
          example: Married
        nationality:
          type: string
          nullable: true
          example: Indian
        fatherName:
          type: string
          nullable: true
          example: Ritesh Mallik
        bloodGroup:
          type: string
          nullable: true
          example: AB +ve
        designation:
          type: string
          example: NOT AVAILABLE
        department:
          type: string
          example: Engineering
        grade:
          type: string
          example: D-3
        groupName:
          type: string
          example: NOT AVAILABLE
        costCenter:
          type: string
          example: NOT AVAILABLE
        companyName:
          type: string
          example: NOT AVAILABLE
        terminationDate:
          type: string
          nullable: true
          format: date
          example: ''
        manager:
          type: string
          example: Meet Semlani
        managerEmail:
          type: string
          format: email
          nullable: true
          example: NOT AVAILABLE
        managerEmail2:
          type: string
          format: email
          nullable: true
          example: NOT AVAILABLE
        managerEmail3:
          type: string
          format: email
          nullable: true
          example: NOT AVAILABLE
        managerEmail4:
          type: string
          format: email
          nullable: true
          example: NOT AVAILABLE
        managerEmail5:
          type: string
          format: email
          nullable: true
          example: NOT AVAILABLE
        countryCode:
          type: string
          example: IN
        bankDetails:
          type: object
          properties:
            accountNumber:
              type: string
              nullable: true
              example: '************'
            ifscCode:
              type: string
              nullable: true
              example: '************'
            bankName:
              type: string
              nullable: true
              example: SBI
        currentAddress:
          type: object
          properties:
            addressPincode:
              type: string
              nullable: true
              example: '560080'
            addressCity:
              type: string
              nullable: true
              example: Banglore
            addressCountry:
              type: string
              nullable: true
              example: India
            addressState:
              type: string
              nullable: true
              example: Karnataka
            addressLine:
              type: string
              example: Sadashiva Nagar Armane Nagar
        permanentAddress:
          type: object
          properties:
            addressPincode:
              type: string
              nullable: true
              example: '226001'
            addressCity:
              type: string
              nullable: true
              example: Luknow
            addressCountry:
              type: string
              nullable: true
              example: India
            addressState:
              type: string
              nullable: true
              example: Uttar Pradesh
            addressLine:
              type: string
              example: Yarana Nagar Luknow
        jobLocation:
          type: object
          properties:
            pincode:
              type: string
              example: NOT AVAILABLE
            city:
              type: string
              example: NOT AVAILABLE
        employeeMetadata:
          type: object
          properties:
            marriageDate:
              type: string
              nullable: true
              example: NOT AVAILABLE
        dependentDetails:
          type: array
          items:
            type: object
            properties:
              name:
                type: string
                example: Sohan Negi
              relation:
                type: string
                example: Father
              dob:
                type: string
                nullable: true
                example: NOT AVAILABLE
              email:
                type: string
                nullable: true
                example: NOT AVAILABLE
              gender:
                type: string
                nullable: true
                example: NOT AVAILABLE
              mobileNumber:
                type: string
                nullable: true
                example: NOT AVAILABLE
              profession:
                type: string
                nullable: true
                example: NOT AVAILABLE
        salaryDetails:
          type: object
          properties:
            ctc:
              type: object
              properties:
                basic:
                  type: number
                  example: 50000
                dearnessAllowance:
                  type: number
                  example: 9000.9
                hra:
                  type: number
                  example: 25000.5
                gratuity:
                  type: number
                  example: 2000.7
                medicalAllowance:
                  type: number
                  example: 2000.7
                travelAllowance:
                  type: number
                  example: 2000.7
                specialAllowance:
                  type: number
                  nullable: true
                  example: null
                otherAllowance:
                  type: number
                  nullable: true
                  example: null
                flexiBasketAllowance:
                  type: number
                  nullable: true
                  example: null
                grossPay:
                  type: number
                  nullable: true
                  example: null
                taxRegime:
                  type: string
                  nullable: true
                  example: null
                fixedPay:
                  type: number
                  nullable: true
                  example: null
                bonus:
                  type: object
                  properties:
                    joining:
                      type: number
                      example: 80000
                    referral:
                      type: number
                      nullable: true
                      example: null
                    retention:
                      type: number
                      nullable: true
                      example: null
                    performance:
                      type: number
                      nullable: true
                      example: null
                    relocation:
                      type: number
                      nullable: true
                      example: null
                    misc:
                      type: number
                      nullable: true
                      example: null
                deductions:
                  type: object
                  properties:
                    pf:
                      type: number
                      example: 1800
                    esi:
                      type: number
                      nullable: true
                      example: null
                    professionalTax:
                      type: number
                      nullable: true
                      example: null
                    labourWelfareFund:
                      type: number
                      nullable: true
                      example: null
                    misc:
                      type: number
                      nullable: true
                      example: null
                    nps:
                      type: number
                      nullable: true
                      example: null
            monthly:
              type: object
              properties:
                month:
                  type: number
                  example: 2
                year:
                  type: number
                  example: 2025
                basic:
                  type: number
                  nullable: true
                  example: null
                dearnessAllowance:
                  type: number
                  nullable: true
                  example: null
                hra:
                  type: number
                  nullable: true
                  example: null
                medicalAllowance:
                  type: number
                  nullable: true
                  example: null
                travelAllowance:
                  type: number
                  nullable: true
                  example: null
                specialAllowance:
                  type: number
                  nullable: true
                  example: null
                flexiBasketAllowance:
                  type: number
                  nullable: true
                  example: null
                gratuity:
                  type: number
                  example: 1600
                otherAllowance:
                  type: number
                  nullable: true
                  example: null
                taxRegime:
                  type: string
                  nullable: true
                  example: null
                fixedPay:
                  type: number
                  nullable: true
                  example: null
                grossPay:
                  type: number
                  nullable: true
                  example: null
                bonus:
                  type: object
                  properties:
                    joining:
                      type: number
                      example: 20000
                    referral:
                      type: number
                      nullable: true
                      example: null
                    retention:
                      type: number
                      nullable: true
                      example: null
                    performance:
                      type: number
                      nullable: true
                      example: null
                    relocation:
                      type: number
                      example: 28907.17
                    misc:
                      type: number
                      nullable: true
                      example: null
                deductions:
                  type: object
                  properties:
                    pf:
                      type: number
                      nullable: true
                      example: null
                    esi:
                      type: number
                      nullable: true
                      example: null
                    professionalTax:
                      type: number
                      example: 300
                    labourWelfareFund:
                      type: number
                      nullable: true
                      example: null
                    tds:
                      type: number
                      nullable: true
                      example: null
                    medicalClaimDeduction:
                      type: number
                      nullable: true
                      example: null
                    groupTermInsuranceDeductions:
                      type: number
                      nullable: true
                      example: null
                    earlyWageDeduction:
                      type: number
                      nullable: true
                      example: null
                    misc:
                      type: number
                      example: 162023.24
                    nps:
                      type: number
                      example: 1234.34
                reimbursements:
                  type: number
                  example: 93321.33
  securitySchemes:
    TokenAuth:
      type: apiKey
      in: header
      name: Authorization

````