# Свързване на няколко действия в един маршрут

> Изброете няколко действия след --> за да се изпълняват последователно върху един и същ payload, и отбележете с (response) кое от тях отговаря.

Framework: total5
Product: Total.js 5 (total5@0.0.19)
Language: bg
Content-SHA256: 3e4dfa7b290a784e4a4a96cc4f4e851a427b271431a71b0b3c864fd5b516bd33
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: total5-installed@total5@0.0.19
Review: not-recorded

Един маршрут може да изпълнява повече от едно действие: напишете ги едно след друго след `-->`. Изпълняват се по ред, всички получават един и същ payload, а първата грешка прекъсва веригата. Добавете `(response)` след действието, чийто резултат трябва да бъде изпратен; без него отговаря последното действие.

```js definitions/order.js
NEWACTION('Order/validate', {
	name: 'Validate the order',
	input: '*product:String, *quantity:Number',
	action: function($, model) {
		model.quantity > 0 ? $.success() : $.invalid('quantity');
	}
});

NEWACTION('Order/save', {
	name: 'Save the order',
	input: '*product:String, *quantity:Number',
	action: function($, model) {
		$.callback({ id: 'order-1', product: model.product, quantity: model.quantity });
	}
});
```

```js controllers/order.js
exports.install = function() {
	ROUTE('POST /order/ --> *Order/validate *Order/save (response)');
};
```
