# Los enlaces de invitación generados con correo electrónico no se pueden canjear

**URL:** https://meta.discourse.org/t/generated-invite-links-with-email-cant-be-redeemed/186472
**Category:** Bug
**Created:** [12 Abril, 2021 08:58 UTC](https://meta.discourse.org/t/generated-invite-links-with-email-cant-be-redeemed/186472 "2021-04-12T08:58:04Z")
**Posts on this page:** 8
**Page:** 1

<div class="post-metadata">

### Author: ![jessicah](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jessicah/32/102653_2.png) [@jessicah](https://meta.discourse.org/u/jessicah)
#### Post date: [12 Abril, 2021 08:58 UTC](https://meta.discourse.org/t/generated-invite-links-with-email-cant-be-redeemed/186472/1 "2021-04-12T08:58:04Z")

</div>

Estoy publicando en el punto final de la API `/invites.json` con el siguiente JSON:

```plaintext
{
    "email": "new.member@example.com",
    "skip_email": true,
    "max_redemptions_allowed": 1,
    "expires_at": << fecha actual + 1 mes >>
    "group_names": "example_group"
}

```

Lo cual crea una invitación válida, de la cual tomo el enlace de invitación y se lo proporciono al usuario.

Sin embargo, cuando el usuario intenta canjear la invitación, falla en [discourse/app/controllers/invites\_controller.rb at main · discourse/discourse · GitHub](https://github.com/discourse/discourse/blob/master/app/controllers/invites_controller.rb#L225) con el error genérico `invite.error_message` debido a que no se pudo actualizar la base de datos por alguna razón.

He estado tratando de rastrear el código, pero no veo nada obvio que destaque.

Este es un ejemplo de registro de la tabla `invites`:

```plaintext
  id | invite_key | email | invited_by_id | user_id | redeemed_at | created_at | updated_at | deleted_at | deleted_by_id | invalidated_at | moderator | custom_message | emailed_status | max_redemptions_allowed | redemption_count | expires_at
 1587 | 4b4e........................2307 | example@gmail.com | 1 | | | 2021-04-11 23:51:05.253528 | 2021-04-11 23:51:05.253528 | | | | f | | 0 | 1 | 0 | 2021-05-11 11:51:05.193

```

---

<div class="post-metadata">

### Author: ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)
#### Post date: [13 Abril, 2021 07:09 UTC](https://meta.discourse.org/t/generated-invite-links-with-email-cant-be-redeemed/186472/2 "2021-04-13T07:09:39Z")

</div>

¿Has intentado hacerlo desde la interfaz de usuario? ¿Funciona? De ser así, ¿cuál es la diferencia entre la solicitud que realiza la interfaz de usuario y la que hiciste tú?

¿Hay algo en `/logs` en el sitio?

---

<div class="post-metadata">

### Author: ![jessicah](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jessicah/32/102653_2.png) [@jessicah](https://meta.discourse.org/u/jessicah)
#### Post date: [13 Abril, 2021 08:21 UTC](https://meta.discourse.org/t/generated-invite-links-with-email-cant-be-redeemed/186472/3 "2021-04-13T08:21:47Z")

</div>

Por desgracia, no ha habido nada en los registros. No lo he probado desde la interfaz de usuario, pero lo revisaré.

Por cierto, ¿hay algún post que describa cómo aplicar un parche o ejecutar un fork en producción? Consulta mi comentario aquí: [Install Discourse for development using Docker - #152 by jessicah](https://meta.discourse.org/t/beginners-guide-to-install-discourse-for-development-using-docker/102009/152?u=jessicah).

---

<div class="post-metadata">

### Author: ![jessicah](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jessicah/32/102653_2.png) [@jessicah](https://meta.discourse.org/u/jessicah)
#### Post date: [14 Abril, 2021 21:22 UTC](https://meta.discourse.org/t/generated-invite-links-with-email-cant-be-redeemed/186472/4 "2021-04-14T21:22:34Z")

</div>

@sam parece que solo afecta a algunos usuarios y no a otros, pero no he podido identificar qué es lo diferente :-/

Podría aplicar un parche que añada registros adicionales, pero según el enlace en el mensaje anterior, aunque puedo ejecutar un entorno de desarrollo, no logro que funcione en mi instancia de producción, así que realmente no sé cómo puedo depurar ☹

---

<div class="post-metadata">

### Author: ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)
#### Post date: [14 Abril, 2021 23:18 UTC](https://meta.discourse.org/t/generated-invite-links-with-email-cant-be-redeemed/186472/5 "2021-04-14T23:18:34Z")

</div>

No todos los usuarios pueden invitar. ¿Estás seguro de que el usuario que realiza las invitaciones a través de la API tiene permiso para invitar?

---

<div class="post-metadata">

### Author: ![jessicah](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jessicah/32/102653_2.png) [@jessicah](https://meta.discourse.org/u/jessicah)
#### Post date: [15 Abril, 2021 00:58 UTC](https://meta.discourse.org/t/generated-invite-links-with-email-cant-be-redeemed/186472/6 "2021-04-15T00:58:39Z")

</div>

`invited_by_id` es 1, es decir, admin, utilizado para todas las invitaciones.

---

<div class="post-metadata">

### Author: ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)
#### Post date: [4 Agosto, 2021 07:09 UTC](https://meta.discourse.org/t/generated-invite-links-with-email-cant-be-redeemed/186472/7 "2021-08-04T07:09:31Z")

</div>

Hola Jessica,

Nuestro código de invitación ha cambiado mucho desde abril. ¿Sigues teniendo problemas aquí?

cc @dan

---

<div class="post-metadata">

### Author: ![dan](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/dan/32/101549_2.png) [@dan](https://meta.discourse.org/u/dan)
#### Post date: [18 Agosto, 2021 12:33 UTC](https://meta.discourse.org/t/generated-invite-links-with-email-cant-be-redeemed/186472/10 "2021-08-18T12:33:01Z")

</div>


