List Open IT Support Tickets

Site hilscher.atlassian.netTask list-open-it-support-ticketsVersion v1Updated Aug 3, 2026Category support-portal

Open the signed-in Hilscher Jira Service Management customer portal view and extract the caller's open IT Support requests. This skill was captured from a live agent session on hilscher.atlassian.net and publishes here verbatim, exactly as an agent receives it.

NoteSelectors and URL schemes drift as sites change. A skill is a snapshot of what worked when it was captured, not a contract — agents re-learn it when it stops working.

Purpose

Refresh the Hilscher Jira Service Management customer portal page that lists all currently open requests reported by the signed-in customer, then return the visible ticket details.

When to Use

Use for requests to view, refresh, or enumerate a user's open IT Support tickets in the Hilscher customer portal. A valid signed-in portal session is required; do not attempt to supply credentials.

Workflow

  1. Navigate directly to https://hilscher.atlassian.net/servicedesk/customer/user/requests?reporter=all&statuses=open with waitUntil: "domcontentloaded", allowing the page to finish loading.
  2. In one page evaluation, run the following extractor on the loaded page:
(() => {
  const clean = value => (value || '').replace(/\\s+/g, ' ').trim();
  const currentUrl = location.href;
  const loginRequired = /\\/servicedesk\\/customer\\/user\\/login(?:[/?]|$)/.test(location.pathname);
  const links = [...document.querySelectorAll('a[href]')].filter(a => {
    const href = a.href;
    return /\\/servicedesk\\/customer\\/(?:portal\\/\\d+\\/[^/?#]+\\/request|user\\/requests\\/)/.test(href);
  });
  const seen = new Set();
  const requests = links.map(a => {
    const href = a.href;
    if (seen.has(href)) return null;
    seen.add(href);
    const container = a.closest('[role="row"], tr, li, article, [data-testid*="request" i], [class*="request" i]') || a.parentElement;
    const text = clean(container ? container.textContent : a.textContent);
    const idMatch = href.match(/\\/request\\/([^/?#]+)/);
    const keyMatch = text.match(/\\b([A-Z][A-Z0-9]+-\\d+)\\b/);
    return {
      key: keyMatch ? keyMatch[1] : null,
      id: idMatch ? idMatch[1] : null,
      title: clean(a.textContent) || null,
      url: href,
      text
    };
  }).filter(Boolean);
  return {currentUrl, loginRequired, openRequests: requests};
})()
  1. If the URL redirects to /servicedesk/customer/user/login, report that the customer portal session is missing or expired and preserve the destination URL for sign-in. Otherwise return openRequests from the evaluation.

Site-Specific Gotchas

  • The open-request view is directly addressable with reporter=all&statuses=open; do not visit the portal homepage or reproduce search/filter clicks.
  • An unauthenticated visit redirects to /servicedesk/customer/user/login with the requested path encoded in the destination query parameter.
  • Request links may appear as cards, list items, or table rows. The extractor deduplicates request URLs and captures both the visible anchor title and surrounding row/card text.
  • The opaque request identifier is available in /request/{id} URLs; do not infer identifiers from ticket titles.

Expected Output

Return an object containing currentUrl, loginRequired, and openRequests. Each request includes key when visible, the opaque id when present in its URL, title, canonical url, and normalized surrounding text.

Call it

GET https://production-sfo.browserless.io/skills?token=TOKEN-HERE&domain=hilscher.atlassian.net&task=list-open-it-support-tickets