My advice: **do both**. :)

The API client can decide to use the messages from your API or read each error code and create his own messages. Like:

    {
        "errorCode": "4005",
        "message": "Person already registered"
    }