### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

Adding and labeling more than 10 parameters only labels (or only returns) the first 10 labeled parameters.

### Expected Behavior

Adding and labeling more than 10 parameters should add & then return all the parameters.

### How are you starting LocalStack?

With a docker-compose file

### Steps To Reproduce

#### How are you starting localstack (e.g., `bin/localstack` command, arguments, or `docker-compose.yml`)

docker-compose.yml

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

```
params = [ ... ]  # create a list of **more** than 10 parameters ( Name + Value)
for param of params:
       # add the parameter (returns 200)
        res = ssm.put_parameter(Name=param["Name"], Value=param["Value], Type='String')

       # label the returned version with 'latest' (returns 200)
        label_res = ssm.label_parameter_version(Name=path, ParameterVersion=res['Version'], Labels=['latest'])

       # get the added parameter (returns the parameter successfully)
        prm = ssm.get_parameter(Name=path)

# get all parameters with the 'latest' label - this returns the first 10 parameters (although `MaxResults` is 100), and also doesn't return a `NextToken` property to iterate through the next batch of parameters.
ps = ssm.get_parameters_by_path(Path=base_path,
                                        ParameterFilters=[  {  'Key': 'Label',  'Values': [  'latest'  ] } ],
                                        MaxResults=100) 

```


### Environment

```markdown
- OS: Windows 10
- LocalStack: 0.12.17.5
```


### Anything else?

_No response_
)
        found = response.get("Parameters")
        not_found = response.get("InvalidParameters")
        for param in found:
            self.assertIn(param["Name"], [param_name, complete_secret])
        for param in not_found:
            self.assertIn(param, ["inexistent_param", secret_path + "inexistent_secret"])
    def _assert(self, search_name, param_name):
        ssm_client = aws_stack.connect_to_service("ssm")
        def do_assert(result):
            self.assertGreater(len(result), 0)
            self.assertEqual(param_name, result[0]["Name"])
            self.assertEqual("123", result[0]["Value"])
        response = ssm_client.get_parameter(Name=search_name)
        do_assert([response["Parameter"]])
        response = ssm_client.get_parameters(Names=[search_name])
        do_assert(response["Parameters"])
    def test_get_parameters_by_path_and_filter_by_labels(self):
        ssm_client = aws_stack.connect_to_service("ssm")
        path = "/my/path"
        value = "value"
        param = ssm_client.put_parameter(Name=path, Value=value, Type="String")
        ssm_client.label_parameter_version(
            Name=path, ParameterVersion=param["Version"], Labels=["latest"]
        )
        list_of_params = ssm_client.get_parameters_by_path(
            Path="/my", ParameterFilters=[{"Key": "Label", "Values": ["latest"]}]
        )
        self.assertEqual("/my/path", list_of_params["Parameters"][0]["Name"])