public function send(Sendable $model, AbstractEnvelope $envelope)
    {
        $classname = $this->getType($model);

        if (intval($model->getId()) == 0) {
            $model->save($this->getService($classname));
        }

        $response = $this->request(
            $this->buildUrl($model, null, '/send_' . strtolower($classname)), 'PUT', $this->mapper->mapToStorage($envelope)
        );

        return $this->mapper->mapFromStorage($response);
    }