Tls: failed to find any PEM data in certificate input - Vault API

I am following this documentation (Consul - Secrets Engines - HTTP API | Vault by HashiCorp) for creating consul secret engine, create role and get a token. But I am getting a bit of misleading error when trying to get the token. Any ideas or similar issues?

here are the steps that I execute:

list roles

curl \
    --header "X-Vault-Token: s.xxx" \
    --request LIST \
    https://vault.service.brain.consul:8200/v1/consul/roles \
        --key /opt/vault/tls/vault.key \
        --cert /opt/vault/tls/vault.pem \
        --cacert /opt/vault/tls/cachain.pem

output

{"request_id":"a9a892e9-dba0-f6ca-b181-b16718db281d","lease_id":"","renewable":false,"lease_duration":0,"data":{"keys":["consul-worker"]},"wrap_info":null,"warnings":null,"auth":null}

show role

curl \
    --header "X-Vault-Token: s.xxx" \
    https://vault.service.brain.consul:8200/v1/consul/roles/consul-worker \
        --key /opt/vault/tls/vault.key \
        --cert /opt/vault/tls/vault.pem \
        --cacert /opt/vault/tls/cachain.pem

output

{"request_id":"6b3b6dd8-ff30-eb91-20c6-3c0bd105be30","lease_id":"","renewable":false,"lease_duration":0,"data":{"lease":0,"local":false,"max_ttl":0,"policies":["agent"],"token_type":"client","ttl":0},"wrap_info":null,"warnings":null,"auth":null}

get role token

curl \
    --header "X-Vault-Token: s.xxx" \
    https://vault.service.brain.consul:8200/v1/consul/creds/consul-worker \
        --key /opt/vault/tls/vault.key \
        --cert /opt/vault/tls/vault.pem \
        --cacert /opt/vault/tls/cachain.pem

output

{"errors":["1 error occurred:\n\t* tls: failed to find any PEM data in certificate input\n\n"]}