Integraciones de StrawPoll

Webhooks

Los webhooks son llamadas que se envían a una URL cuando se desencadena un determinado evento. Pueden ser usados para integrar fácilmente StrawPoll con otros servicios.
Una solicitud de webhook enviará los datos de JSON al punto final. Parte de la estructura de los datos depende del tipo de disparo del evento.
Los disparadores de eventos
Actualmente los ganchos pueden ser activados por los siguientes eventos:
  • Crear una encuesta
  • Vota
  • La fecha límite termina
  • Borrar la encuesta
A continuación se presentan varios ejemplos de carga útil de solicitud basados en diferentes tipos de disparadores.
Ejemplo de solicitud de carga útil (disparador de "creación")
{ 
  "webhook": {
    "name": "Ejemplo Webhook #1",
    "url": "https://hook.integromat.com/e95yg8w...",
    "trigger": "create"
  },
  "content": {
    "id": "abcdefgh1",
    "title": "Encuesta de prueba",
    "url": "https://strawpoll.com/abcdefgh1"
  },
  "create": { 
    "id": "abcdefgh1",
    "type": "poll",
    "title": "Encuesta de prueba",
    "url": "https://strawpoll.com/abcdefgh1"
    "options": [ 
      { 
        "id": "abcdefghabcdefgh", 
        "name": "Respuesta #1", 
        "tipo": "text" 
      }, 
      { 
        "id": "ijklmnopijklmnop", 
        "name": "Respuesta #2", 
        "tipo": "text" 
      }, 
      { 
        "id": "qrstvwxyqrstvwxy", 
        "name": "Respuesta #3", 
        "tipo": "text" 
      }
    ]
  }
}
Ejemplo de solicitud de carga útil (disparador de "Voto")
{ 
  "webhook": {
    "name": "Ejemplo Webhook #1",
    "url": "https://hook.integromat.com/e95yg8w...",
    "trigger": "vote"
  },
  "content": {
    "id": "abcdefgh1",
    "title": "Encuesta de prueba",
    "url": "https://strawpoll.com/abcdefgh1"
  },
  "vote": {
    "name": "Testuser",
    "votado_opciones": [ 
      { 
        "option_id": "abcdefghabcdefgh", 
        "name": "Respuesta #1", 
        "vote": 1 
      } 
    ]
  }
}
Ejemplo de solicitud de carga útil (Disparador "Voto (Fecha de la reunión)")
{ 
  "webhook": {
    "name": "Ejemplo Webhook #1",
    "url": "https://hook.integromat.com/e95yg8w...",
    "trigger": "vote"
  },
  "content": {
    "id": "abcdefgh1",
    "title": "Encuesta de prueba",
    "url": "https://strawpoll.com/abcdefgh1"
  },
  "vote": {
    "name": "Testuser",
    "votado_opciones": [ 
      { 
        "option_id": "abcdefghabcdefgh", 
        "type": "fecha",
        "name": "2020-11-08T08:00:00Z",
        "start_time": "1604822400000",
        "end_time": "1604826000000",
        "vote": 1 
      } 
    ]
  }
}
Los campos "start_time" y "end_time" son marcas de tiempo de Unix en milisegundos.
Ejemplo de solicitud de carga útil (disparador de "fecha límite")
{ 
  "webhook": {
    "name": "Ejemplo Webhook #1",
    "url": "https://hook.integromat.com/e95yg8w...",
    "trigger": "deadline"
  },
  "content": {
    "id": "abcdefgh1",
    "title": "Encuesta de prueba",
    "url": "https://strawpoll.com/abcdefgh1"
  },
  "deadline": {
    "time": "2020-11-05T07:40:06Z",
    "results": { 
      "total_votos": 42,
      "options": [ 
        { 
          "id": "abcdefghabcdefgh", 
          "name": "Respuesta #1", 
          "votes": 26 
        },
        { 
          "id": "ijklmnopijklmnop", 
          "name": "Respuesta #2", 
          "votes": 13
        },
        { 
          "id": "qrstvwxyqrstvwxy", 
          "name": "Respuesta #3", 
          "votes": 3
        }
      ] 
    }
  }
}
Ejemplo de solicitud de carga útil (disparador de "borrar")
{ 
  "webhook": {
    "name": "Ejemplo Webhook #1",
    "url": "https://hook.integromat.com/e95yg8w...",
    "trigger": "delete"
  },
  "content": {
    "id": "abcdefgh1",
    "title": "Encuesta de prueba",
    "url": "https://strawpoll.com/abcdefgh1"
  },
  "delete": { 
    "id": "abcdefgh1",
    "title": "Encuesta de prueba",
    "url": "https://strawpoll.com/abcdefgh1"
  }
}
Como pueden ver, para algunos puntos finales los datos están disponibles de forma redundante. Esto se debe al propósito de enviar siempre el "webhook" y el campo de "content", sin importar qué evento se desencadene.