View tickets related to a user
Please be sure of your agent type and version and pick the right documentation accordingly.
This is the documentation of the forest-express-sequelize
and forest-express-mongoose
Node.js agents that will soon reach end-of-support.
forest-express-sequelize
v9 and forest-express-mongoose
v9 are replaced by @forestadmin/agent
v1.
Please check your agent type and version and read on or switch to the right documentation.
View tickets related to a user
Now, let's say we want to access the tickets for a user of my database. We are going to use the email address as the foreign key between the database model (Users
table) and Zendesk tickets.
First, we need to create the Smart Relationship between Users
and zendesk_tickets
as follows:
collection('users', {
actions: [],
fields: [
{
field: 'ze_requested_tickets',
type: ['String'],
reference: 'zendesk_tickets.id',
},
],
segments: [],
});
Then, we need to implement the Smart Relationship route. This route will query the Zendesk tickets related to the user's email (requested field on zendesk_tickets
).
const { getTickets } = require('../services/zendesk-tickets-service');
router.get(
'/users/:userId/relationships/ze_requested_tickets',
async (request, response, next) => {
// Get the user email for filtering on requester
const user = await users.findByPk(request.params.userId);
const additionalFilter = `requester:${user.email}`;
getTickets(request, response, next, additionalFilter);
}
);
Now, you should see the requested tickets for a user:

Last updated
Was this helpful?