# Create new record

`POST /api/candidate`

Authentication (security requirement alternatives):

```json
[
  {
    "bearer": []
  }
]
```

- bearer: http (bearer), header JWT. Enter JWT token

Parameters:

- `origin` (header, string, required)
  Type: string

Request body: application/json (required)

Type: object

Schema: [CreateCandidateDTO](https://sourcey-gauzy.pages.dev/api-reference/models/createcandidatedto/index.md)

- `tenant` (optional)
  Type: object

- `tenantId` (optional)
  Type: string

- `organization` (required)
  Type: object

- `organizationId` (required)
  Type: string

- `sentTo` (optional)
  Type: string

- `short_description` (optional)
  Type: string
  
  maxLength: 200

- `description` (optional)
  Type: string

- `startedWorkOn` (optional)
  Type: string, date-time

- `endWork` (optional)
  Type: string, date-time

- `employeeLevel` (optional)
  Type: string
  
  maxLength: 500

- `anonymousBonus` (optional)
  Type: boolean

- `organizationEmploymentTypes` (optional)
  Type: array
  
  Items:
    Reference: [CreateOrganizationEmploymentTypeDTO](https://sourcey-gauzy.pages.dev/api-reference/models/createorganizationemploymenttypedto/index.md); Type: object

- `organizationDepartments` (optional)
  Type: array
  
  Items:
    Reference: [CreateOrganizationDepartmentDTO](https://sourcey-gauzy.pages.dev/api-reference/models/createorganizationdepartmentdto/index.md); Type: object

- `organizationPosition` (optional)
  Type: object

- `skills` (optional)
  Type: array
  
  Items:
    Type: string

- `tags` (optional)
  Type: array
  
  Items:
    Type: array

- `user` (required)
  Reference: [UserInputDTO](https://sourcey-gauzy.pages.dev/api-reference/models/userinputdto/index.md); Type: object

- `password` (required)
  Type: string

- `documents` (required)
  Type: object

Responses:

- 201: The record has been successfully created.

- 400: Invalid input, The response body may contain clues as to what went wrong

- 401: Unauthorized

- 403: Forbidden

## Examples

### cURL

```bash
curl -X POST 'http://localhost:3000/api/candidate' \
  -H 'origin: string' \
  -H 'Authorization: Bearer YOUR_TOKEN' \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "tenant": {},
  "tenantId": "string",
  "organization": {},
  "organizationId": "string",
  "sentTo": "string",
  "short_description": "string",
  "description": "string",
  "startedWorkOn": "2024-01-15T09:30:00Z",
  "endWork": "2024-01-15T09:30:00Z",
  "employeeLevel": "string",
  "anonymousBonus": true,
  "organizationEmploymentTypes": [
    {
      "tenant": {},
      "tenantId": "string",
      "organization": {},
      "organizationId": "string",
      "sentTo": "string",
      "name": "string",
      "tags": "string"
    }
  ],
  "organizationDepartments": [
    {
      "tenant": {},
      "tenantId": "string",
      "organization": {},
      "organizationId": "string",
      "sentTo": "string",
      "name": "string",
      "tags": "string"
    }
  ],
  "organizationPosition": {},
  "skills": [
    "string"
  ],
  "tags": [
    []
  ],
  "user": {
    "email": "string",
    "roleId": "string",
    "role": {},
    "firstName": "string",
    "lastName": "string",
    "imageUrl": "string",
    "preferredLanguage": "en"
  },
  "password": "string",
  "documents": {}
}'
```

### JavaScript

```javascript
const body = `{
  "tenant": {},
  "tenantId": "string",
  "organization": {},
  "organizationId": "string",
  "sentTo": "string",
  "short_description": "string",
  "description": "string",
  "startedWorkOn": "2024-01-15T09:30:00Z",
  "endWork": "2024-01-15T09:30:00Z",
  "employeeLevel": "string",
  "anonymousBonus": true,
  "organizationEmploymentTypes": [
    {
      "tenant": {},
      "tenantId": "string",
      "organization": {},
      "organizationId": "string",
      "sentTo": "string",
      "name": "string",
      "tags": "string"
    }
  ],
  "organizationDepartments": [
    {
      "tenant": {},
      "tenantId": "string",
      "organization": {},
      "organizationId": "string",
      "sentTo": "string",
      "name": "string",
      "tags": "string"
    }
  ],
  "organizationPosition": {},
  "skills": [
    "string"
  ],
  "tags": [
    []
  ],
  "user": {
    "email": "string",
    "roleId": "string",
    "role": {},
    "firstName": "string",
    "lastName": "string",
    "imageUrl": "string",
    "preferredLanguage": "en"
  },
  "password": "string",
  "documents": {}
}`;

const response = await fetch('http://localhost:3000/api/candidate', {
  method: 'POST',
  headers: {
    'origin': 'string',
    'Authorization': 'Bearer YOUR_TOKEN',
    'Content-Type': 'application/json',
  },
  body,
});

const data = await response.text();
```

### Python

```python
import requests

body = '''{
  "tenant": {},
  "tenantId": "string",
  "organization": {},
  "organizationId": "string",
  "sentTo": "string",
  "short_description": "string",
  "description": "string",
  "startedWorkOn": "2024-01-15T09:30:00Z",
  "endWork": "2024-01-15T09:30:00Z",
  "employeeLevel": "string",
  "anonymousBonus": true,
  "organizationEmploymentTypes": [
    {
      "tenant": {},
      "tenantId": "string",
      "organization": {},
      "organizationId": "string",
      "sentTo": "string",
      "name": "string",
      "tags": "string"
    }
  ],
  "organizationDepartments": [
    {
      "tenant": {},
      "tenantId": "string",
      "organization": {},
      "organizationId": "string",
      "sentTo": "string",
      "name": "string",
      "tags": "string"
    }
  ],
  "organizationPosition": {},
  "skills": [
    "string"
  ],
  "tags": [
    []
  ],
  "user": {
    "email": "string",
    "roleId": "string",
    "role": {},
    "firstName": "string",
    "lastName": "string",
    "imageUrl": "string",
    "preferredLanguage": "en"
  },
  "password": "string",
  "documents": {}
}'''

response = requests.post(
    'http://localhost:3000/api/candidate',
    data=body.encode('utf-8'),
    headers={
        'origin': 'string',
        'Authorization': 'Bearer YOUR_TOKEN',
        'Content-Type': 'application/json',
    },
)
print(response.text)
```
