# Settings

Package settings are added in your `settings.py`:

Default settings are shown below:

    DJANGO_GUID = {
        'GUID_HEADER_NAME': 'Correlation-ID',
        'VALIDATE_GUID': True,
        'RETURN_HEADER': True,
        'EXPOSE_HEADER': True,
        'INTEGRATIONS': [],
        'UUID_LENGTH': 32,
        'UUID_FORMAT': 'hex',
    }

## GUID_HEADER_NAME

- Default: `Correlation-ID`

- Type: `string`

The name of the GUID to look for in a header in an incoming request. Remember that it’s case insensitive.

## VALIDATE_GUID

- Default: `True`

- Type: `boolean`

Whether the `GUID_HEADER_NAME` should be validated or not. If set to `True` incoming headers which are not a valid GUID (`uuid.uuid4`), will be replaced with a new one.

## RETURN_HEADER

- Default: `True`

- Type: `boolean`

Whether to return the GUID (Correlation-ID) as a header in the response or not. It will have the same name as the `GUID_HEADER_NAME` setting.

## EXPOSE_HEADER

- Default: `True`

- Type: `boolean`

Whether to return `Access-Control-Expose-Headers` for the GUID header if `RETURN_HEADER` is `True`, has no effect if `RETURN_HEADER` is `False`. This is allows the JavaScript Fetch API to access the header when CORS is enabled.

## INTEGRATIONS

- Default: `[]`

- Type: `list`

Whether to enable any custom or available integrations with `django_guid`. As an example, using `SentryIntegration()` as an integration would set Sentry’s `transaction_id` to match the GUID used by the middleware.

## IGNORE_URLS

- Default: `[]`

- Type: `list`

URL endpoints where the middleware will be disabled. You can put your health check endpoints here.

## UUID_LENGTH

- Default: `32`

- Type: `int`

If a full UUID hex is too long for you, this settings lets you specify the length you wish to use. The chance of collision in a UUID is so low, that most systems will get away with a lot fewer than 32 characters.

## UUID_FORMAT

- Default: `hex`

- Type: `string`

If a UUID hex is not suitable for you, this settings lets you specify the format you wish to use. The options are: * `hex`: The default, a 32 character hexadecimal string. e.g. ee586b0fba3c44849d20e1548210c050 * `string`: A 36 character string. e.g. ee586b0f-ba3c-4484-9d20-e1548210c050