# Filtrar a resposta de uma ação com output

> Declare output para que apenas os campos indicados saiam da ação, por exemplo para nunca expor o hash de uma palavra-passe.

Framework: total5
Product: Total.js 5 (total5@0.0.19)
Language: pt
Content-SHA256: 6a3aeddd04e035590b80197d3ccd747dbcc6d424d8e683f7518c933b864e3793
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: total5-installed@total5@0.0.19
Review: not-recorded

`output` tem a mesma sintaxe que `input`, mas aplica-se à **resposta**: só os campos declarados são enviados, convertidos para os seus tipos. Declare-o em todas as ações que leem de uma base de dados e não poderá expor um campo por engano.

```js definitions/users.js
NEWACTION('Users/read', {
	name: 'Read a user',
	output: 'id:String, name:String, age:Number',
	action: function($) {
		$.callback({ id: '1', name: 'Peter', age: '42', password: 'secret-hash', token: 'abc' });
	}
});
```

```js controllers/users.js
exports.install = function() {
	ROUTE('GET /user/ --> *Users/read');
};
```
