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

# Delete Leave Type

> Deletes a leave type from your COR instance using its external ID

Deletes a leave type from your COR instance using its external ID. This removes both the leave type and the integration mapping. Cannot delete leave types that are currently in use by existing leave requests.

## Path Parameters

<ParamField path="id" type="string" required>
  External leave type ID that was used when creating the leave type
</ParamField>

## Request Body Requirements

<ParamField body="metadata" type="object" required>
  <Expandable title="properties">
    <ParamField body="source" type="string" required>
      Integration source identifier
    </ParamField>
  </Expandable>
</ParamField>

## Known Errors

* `LeaveTypeNotFoundError` — No leave type found with the specified external ID for this source
* `ValidationError` — Missing required `metadata.source` field
* `DeletionError` — Leave type cannot be deleted due to existing leave request associations

<RequestExample>
  ```bash cURL theme={null}
  curl --location --request DELETE 'https://integrations.projectcor.com/v2/integrations/leaves-types/type%20external' \
  --header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
  --header 'Content-Type: application/json' \
  --data '{
    "metadata": {
      "source": "GLOBANT"
    }
  }'
  ```

  ```python Python theme={null}
  import requests

  url = "https://integrations.projectcor.com/v2/integrations/leaves-types/type%20external"

  payload = {
      "metadata": {
          "source": "GLOBANT"
      }
  }

  headers = {
      "Authorization": "Bearer YOUR_ACCESS_TOKEN",
      "Content-Type": "application/json"
  }

  response = requests.delete(url, json=payload, headers=headers)
  print(response.status_code)
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch(
    'https://integrations.projectcor.com/v2/integrations/leaves-types/type%20external',
    {
      method: 'DELETE',
      headers: {
        'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
        'Content-Type': 'application/json'
      },
      body: JSON.stringify({
        metadata: {
          source: 'GLOBANT'
        }
      })
    }
  );

  console.log(response.status);
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "statusCode": 200,
    "status": "success",
    "data": {
      "message": "Leave type deleted successfully",
      "deletedId": "type external"
    }
  }
  ```

  ```json 404 theme={null}
  {
    "error": "LeaveTypeNotFoundError",
    "message": "Leave type with external ID 'type external' not found",
    "code": "ZC004"
  }
  ```

  ```json 409 theme={null}
  {
    "status": 409,
    "name": "COR_CUSTOM_ERROR",
    "code": "ZC002",
    "message": "Cannot delete leave type that is in use"
  }
  ```
</ResponseExample>
