# Type of request: This is a ...

[X ] bug report
[ ] feature request

# Detailed description
Calling PutEvents operation returns 500 if no `Detail` is specified. This case is similar to #3043

## Expected behavior
According to the doc https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_PutEventsRequestEntry.html `Details` is optional. 

```
 Detail
    A valid JSON string. There is no other schema imposed. The JSON string may contain fields and nested subobjects.
    Type: String
    Required: No
```

So this should works and set `Detail` as `{}`

```
eb_client = boto3.client('events', endpoint_url='http://localhost:4587')
eb_client.put_events(
    Entries=[
        {
            'DetailType': 'Test'
        }
    ]
)
```

## Actual behavior
500 is returned

# Steps to reproduce

1. Start LocalStack with SERVICES=events
2. Run the client code

## Command used to start LocalStack

```
docker run --rm --name localstack -p 4587:4587 -e SERVICES=events -e DEBUG=true localstack/localstack
```

## Client code (AWS SDK code snippet, or sequence of "awslocal" commands)

CLI:

```
aws events put-events --endpoint-url http://localhost:4587 --entries '[{"DetailType": "Test"}]'
```

Or via python:

```
eb_client = boto3.client('events', endpoint_url='http://localhost:4587')
eb_client.put_events(
    Entries=[
        {
            'DetailType': 'Test',
            'Detail': '{}'
        }
    ]
)
```

'user': ['user1', 'user2', 'user3'],
                'admins': ['skyli', {'prefix': 'hey'}, {'prefix': 'ad'}],
                'test1': [{'anything-but': 200}],
                'test2': [{'anything-but': 'test2'}],
                'test3': [{'anything-but': ['test3', 'test33']}],
                'test4': [{'anything-but': {'prefix': 'test4'}}],
                'ip': [{'cidr': '10.102.1.0/24'}],
                'num-test1': [{'numeric': ['<', 200]}],
                'num-test2': [{'numeric': ['<=', 200]}],
                'num-test3': [{'numeric': ['>', 200]}],
                'num-test4': [{'numeric': ['>=', 200]}],
                'num-test5': [{'numeric': ['>=', 200, '<=', 500]}],
                'num-test6': [{'numeric': ['>', 200, '<', 500]}],
                'num-test7': [{'numeric': ['>=', 200, '<', 500]}]
            })
        }
        event = {
            'EventBusName': TEST_EVENT_BUS_NAME,
            'Source': 'core.update-account-command',
            'DetailType': 'core.app.backend',
            'Detail': json.dumps({
                'decription': 'this-is-event-details',
                'amount': 200,
                'salary': 2000,
                'env': 'prod',
                'user': ['user4', 'user3'],
                'admins': 'admin',
                'test1': 300,
                'test2': 'test22',
                'test3': 'test333',