# Employees

## get_employees

`TOOL get_employees`

Get list of employees for the authenticated user's organization with pagination

Authentication: no security requirement declared for this operation.

Request body: application/json (required)

Type: object

- `page` (optional)
  Type: number
  
  Page number for pagination
  
  default: 1

- `limit` (optional)
  Type: number
  
  Number of items per page
  
  default: 10

- `search` (optional)
  Type: string
  
  Search term for employee name or email

- `relations` (optional)
  Type: array
  
  Relations to include (e.g., ["user", "contact"])
  
  Items:
    Type: string

- `where` (optional)
  Type: object
  
  Additional filters
  
  - `isActive` (optional)
    Type: boolean
  
  - `isArchived` (optional)
    Type: boolean

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_employees",
    "arguments": {
        "page": 1,
        "limit": 10,
        "search": "string",
        "relations": [
          "string"
        ],
        "where": {
          "isActive": true,
          "isArchived": true
        }
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "get_employees",
  "arguments": {
    "page": 1,
    "limit": 10,
    "search": "string",
    "relations": [
      "string"
    ],
    "where": {
      "isActive": true,
      "isArchived": true
    }
  }
});
```

### Python

```python
result = await session.call_tool("get_employees", arguments={
  "page": 1,
  "limit": 10,
  "search": "string",
  "relations": [
    "string"
  ],
  "where": {
    "isActive": true,
    "isArchived": true
  }
})
```


## get_employee_count

`TOOL get_employee_count`

Get employee count in the authenticated user's organization

Authentication: no security requirement declared for this operation.

Request body: application/json (required)

Type: object

- `where` (optional)
  Type: object
  
  Additional filters
  
  - `isActive` (optional)
    Type: boolean
  
  - `isArchived` (optional)
    Type: boolean

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_employee_count",
    "arguments": {
        "where": {
          "isActive": true,
          "isArchived": true
        }
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "get_employee_count",
  "arguments": {
    "where": {
      "isActive": true,
      "isArchived": true
    }
  }
});
```

### Python

```python
result = await session.call_tool("get_employee_count", arguments={
  "where": {
    "isActive": true,
    "isArchived": true
  }
})
```


## get_employees_pagination

`TOOL get_employees_pagination`

Get employees by pagination in the authenticated user's organization

Authentication: no security requirement declared for this operation.

Request body: application/json (required)

Type: object

- `page` (optional)
  Type: number
  
  Page number
  
  default: 1

- `limit` (optional)
  Type: number
  
  Items per page
  
  default: 10

- `search` (optional)
  Type: string
  
  Search term for employee name or email

- `relations` (optional)
  Type: array
  
  Relations to include
  
  Items:
    Type: string

- `where` (optional)
  Type: object
  
  Additional filters
  
  - `isActive` (optional)
    Type: boolean
  
  - `isArchived` (optional)
    Type: boolean

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_employees_pagination",
    "arguments": {
        "page": 1,
        "limit": 10,
        "search": "string",
        "relations": [
          "string"
        ],
        "where": {
          "isActive": true,
          "isArchived": true
        }
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "get_employees_pagination",
  "arguments": {
    "page": 1,
    "limit": 10,
    "search": "string",
    "relations": [
      "string"
    ],
    "where": {
      "isActive": true,
      "isArchived": true
    }
  }
});
```

### Python

```python
result = await session.call_tool("get_employees_pagination", arguments={
  "page": 1,
  "limit": 10,
  "search": "string",
  "relations": [
    "string"
  ],
  "where": {
    "isActive": true,
    "isArchived": true
  }
})
```


## get_working_employees

`TOOL get_working_employees`

Get all working employees in the authenticated user's organization

Authentication: no security requirement declared for this operation.

Request body: application/json (required)

Type: object

- `forRange` (optional)
  Type: object
  
  Date range for filtering
  
  - `startDate` (optional)
    Type: string, date-time
    
    Start date in ISO format
    
    pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](https://sourcey-gauzy.pages.dev/mcp/employees/index.md?:[01]\d|2[0-3]):[0-5]\\d)))$"
  
  - `endDate` (optional)
    Type: string, date-time
    
    End date in ISO format
    
    pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](https://sourcey-gauzy.pages.dev/mcp/employees/index.md?:[01]\d|2[0-3]):[0-5]\\d)))$"

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_working_employees",
    "arguments": {
        "forRange": {
          "startDate": "2024-01-15T09:30:00Z",
          "endDate": "2024-01-15T09:30:00Z"
        }
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "get_working_employees",
  "arguments": {
    "forRange": {
      "startDate": "2024-01-15T09:30:00Z",
      "endDate": "2024-01-15T09:30:00Z"
    }
  }
});
```

### Python

```python
result = await session.call_tool("get_working_employees", arguments={
  "forRange": {
    "startDate": "2024-01-15T09:30:00Z",
    "endDate": "2024-01-15T09:30:00Z"
  }
})
```


## get_working_employees_count

`TOOL get_working_employees_count`

Get working employees count in the authenticated user's organization

Authentication: no security requirement declared for this operation.

Request body: application/json (required)

Type: object

- `forRange` (optional)
  Type: object
  
  Date range for filtering
  
  - `startDate` (optional)
    Type: string, date-time
    
    Start date in ISO format
    
    pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](https://sourcey-gauzy.pages.dev/mcp/employees/index.md?:[01]\d|2[0-3]):[0-5]\\d)))$"
  
  - `endDate` (optional)
    Type: string, date-time
    
    End date in ISO format
    
    pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](https://sourcey-gauzy.pages.dev/mcp/employees/index.md?:[01]\d|2[0-3]):[0-5]\\d)))$"

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_working_employees_count",
    "arguments": {
        "forRange": {
          "startDate": "2024-01-15T09:30:00Z",
          "endDate": "2024-01-15T09:30:00Z"
        }
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "get_working_employees_count",
  "arguments": {
    "forRange": {
      "startDate": "2024-01-15T09:30:00Z",
      "endDate": "2024-01-15T09:30:00Z"
    }
  }
});
```

### Python

```python
result = await session.call_tool("get_working_employees_count", arguments={
  "forRange": {
    "startDate": "2024-01-15T09:30:00Z",
    "endDate": "2024-01-15T09:30:00Z"
  }
})
```


## get_organization_members

`TOOL get_organization_members`

Get members of the authenticated user's organization

Authentication: no security requirement declared for this operation.

Parameters:

- `organizationTeamId` (argument, string, uuid, optional) - Filter by organization team ID
  Type: string, uuid
  
  Filter by organization team ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `organizationProjectId` (argument, string, uuid, optional) - Filter by organization project ID
  Type: string, uuid
  
  Filter by organization project ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `page` (argument, number, optional) - Page number
  Type: number
  
  Page number
  
  default: 1

- `limit` (argument, number, optional) - Items per page
  Type: number
  
  Items per page
  
  default: 10

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_organization_members",
    "arguments": {
        "organizationTeamId": "550e8400-e29b-41d4-a716-446655440000",
        "organizationProjectId": "550e8400-e29b-41d4-a716-446655440000",
        "page": 1,
        "limit": 10
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "get_organization_members",
  "arguments": {
    "organizationTeamId": "550e8400-e29b-41d4-a716-446655440000",
    "organizationProjectId": "550e8400-e29b-41d4-a716-446655440000",
    "page": 1,
    "limit": 10
  }
});
```

### Python

```python
result = await session.call_tool("get_organization_members", arguments={
  "organizationTeamId": "550e8400-e29b-41d4-a716-446655440000",
  "organizationProjectId": "550e8400-e29b-41d4-a716-446655440000",
  "page": 1,
  "limit": 10
})
```


## get_employee

`TOOL get_employee`

Get a specific employee by ID

Authentication: no security requirement declared for this operation.

Parameters:

- `id` (argument, string, uuid, required) - The employee ID
  Type: string, uuid
  
  The employee ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `relations` (argument, array, optional) - Relations to include (e.g., ["user", "contact", "tasks"])
  Type: array
  
  Relations to include (e.g., ["user", "contact", "tasks"])
  
  Items:
    Type: string

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_employee",
    "arguments": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "relations": [
          "string"
        ]
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "get_employee",
  "arguments": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "relations": [
      "string"
    ]
  }
});
```

### Python

```python
result = await session.call_tool("get_employee", arguments={
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "relations": [
    "string"
  ]
})
```


## get_employee_statistics

`TOOL get_employee_statistics`

Get statistics for an employee in the authenticated user's organization

Authentication: no security requirement declared for this operation.

Parameters:

- `employeeId` (argument, string, uuid, required) - The employee ID
  Type: string, uuid
  
  The employee ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `startDate` (argument, string, optional) - Start date for statistics (ISO format)
  Type: string
  
  Start date for statistics (ISO format)

- `endDate` (argument, string, optional) - End date for statistics (ISO format)
  Type: string
  
  End date for statistics (ISO format)

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_employee_statistics",
    "arguments": {
        "employeeId": "550e8400-e29b-41d4-a716-446655440000",
        "startDate": "string",
        "endDate": "string"
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "get_employee_statistics",
  "arguments": {
    "employeeId": "550e8400-e29b-41d4-a716-446655440000",
    "startDate": "string",
    "endDate": "string"
  }
});
```

### Python

```python
result = await session.call_tool("get_employee_statistics", arguments={
  "employeeId": "550e8400-e29b-41d4-a716-446655440000",
  "startDate": "string",
  "endDate": "string"
})
```


## get_current_employee

`TOOL get_current_employee`

Get the current authenticated employee profile

Authentication: no security requirement declared for this operation.

Parameters:

- `relations` (argument, array, optional) - Relations to include (e.g., ["user", "contact", "tasks"])
  Type: array
  
  Relations to include (e.g., ["user", "contact", "tasks"])
  
  Items:
    Type: string

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_current_employee",
    "arguments": {
        "relations": [
          "string"
        ]
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "get_current_employee",
  "arguments": {
    "relations": [
      "string"
    ]
  }
});
```

### Python

```python
result = await session.call_tool("get_current_employee", arguments={
  "relations": [
    "string"
  ]
})
```


## create_employee

`TOOL create_employee`

Create a new employee in the authenticated user's organization

Authentication: no security requirement declared for this operation.

Request body: application/json (required)

Type: object

- `employee_data` (required)
  Type: object
  
  The data for creating the employee
  
  - `userId` (required)
    Type: string
    
    The userId (required)
  
  Additional properties: 
    Type: unknown

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "create_employee",
    "arguments": {
        "employee_data": {
          "userId": "string"
        }
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "create_employee",
  "arguments": {
    "employee_data": {
      "userId": "string"
    }
  }
});
```

### Python

```python
result = await session.call_tool("create_employee", arguments={
  "employee_data": {
    "userId": "string"
  }
})
```


## update_employee

`TOOL update_employee`

Update an existing employee

Authentication: no security requirement declared for this operation.

Parameters:

- `id` (argument, string, uuid, required) - The employee ID
  Type: string, uuid
  
  The employee ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `employee_data` (argument, object, required) - The data for updating the employee
  Type: object
  
  The data for updating the employee
  
  Additional properties: 
    Type: unknown

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "update_employee",
    "arguments": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "employee_data": {}
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "update_employee",
  "arguments": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "employee_data": {}
  }
});
```

### Python

```python
result = await session.call_tool("update_employee", arguments={
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "employee_data": {}
})
```


## update_employee_profile

`TOOL update_employee_profile`

Update the current authenticated employee's profile

Authentication: no security requirement declared for this operation.

Parameters:

- `employee_data` (argument, object, required) - The data for updating the employee profile
  Type: object
  
  The data for updating the employee profile
  
  Additional properties: 
    Type: unknown

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "update_employee_profile",
    "arguments": {
        "employee_data": {}
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "update_employee_profile",
  "arguments": {
    "employee_data": {}
  }
});
```

### Python

```python
result = await session.call_tool("update_employee_profile", arguments={
  "employee_data": {}
})
```


## soft_delete_employee

`TOOL soft_delete_employee`

Soft delete an employee (archive)

Authentication: no security requirement declared for this operation.

Parameters:

- `id` (argument, string, uuid, required) - The employee ID
  Type: string, uuid
  
  The employee ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "soft_delete_employee",
    "arguments": {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "soft_delete_employee",
  "arguments": {
    "id": "550e8400-e29b-41d4-a716-446655440000"
  }
});
```

### Python

```python
result = await session.call_tool("soft_delete_employee", arguments={
  "id": "550e8400-e29b-41d4-a716-446655440000"
})
```


## restore_employee

`TOOL restore_employee`

Restore a soft deleted employee

Authentication: no security requirement declared for this operation.

Parameters:

- `id` (argument, string, uuid, required) - The employee ID
  Type: string, uuid
  
  The employee ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "restore_employee",
    "arguments": {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "restore_employee",
  "arguments": {
    "id": "550e8400-e29b-41d4-a716-446655440000"
  }
});
```

### Python

```python
result = await session.call_tool("restore_employee", arguments={
  "id": "550e8400-e29b-41d4-a716-446655440000"
})
```


## bulk_create_employees

`TOOL bulk_create_employees`

Create multiple employees in bulk for the authenticated user's organization

Authentication: no security requirement declared for this operation.

Request body: application/json (required)

Type: object

- `employees` (required)
  Type: array
  
  Array of employee data to create
  
  Items:
    Type: object
    
    Employee data
    
    - `userId` (required)
      Type: string
      
      The userId (required)
    
    Additional properties: 
      Type: unknown

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "bulk_create_employees",
    "arguments": {
        "employees": [
          {
            "userId": "string"
          }
        ]
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "bulk_create_employees",
  "arguments": {
    "employees": [
      {
        "userId": "string"
      }
    ]
  }
});
```

### Python

```python
result = await session.call_tool("bulk_create_employees", arguments={
  "employees": [
    {
      "userId": "string"
    }
  ]
})
```
