ServiceNow admin project

I've worked
the tickets.
Now I'm building them.

On the service desk I logged and closed requests in ServiceNow every day and kept 96% SLA compliance. This project is the admin side of that: one laptop request, built from the form to the approvals, the fulfillment tasks, the SLA clocks and the help articles.

Service CatalogFlow DesignerSLAsKnowledge
approved in
2 steps ✓
Requested ItemRITM0010024
New Laptop Request

Developer laptop for Nina Patel

ModelDeveloper
Price$2,128
Needed byOct 21
StateWork in Progress
Approvals
✓Maria LopezManager
✓IT ManagersOver $1,500
Laptop fulfillment · 5 business days0%
Counts business hours only, paused during approval
SCTASK0010031 · Hardware Fulfillment Closed
SCTASK0010032 · IT Service Desk Open
What I'm building

One request,
the whole way through.

Instead of touching every module a little, I picked one real process, a new laptop, and followed it everywhere it goes in the platform. The company is made up: NorthPeak Home Supply, a head office and two stores.

01

Catalog item

Seven variables, a reusable requester section, price per model and accessory, and rules that show fields only when they matter.

02

Approval flow

Built in Flow Designer. One approval for standard laptops, two when the model or price calls for it.

03

Fulfillment

Two catalog tasks, one per team, and the request closes itself when both are done.

04

SLAs

A 9–5 Pacific schedule with holidays, and clocks that pause while waiting on approval.

05

Knowledge

A self-service knowledge base with an approval step, access rules and five articles.

06

Platform

A custom field, an ACL, a business rule, and a 20-laptop import from my AssetTrack app.

Try it

Put in a request
and watch it route.

This follows the same rules as the flow I built. Pick who's asking and what they want, and you'll see the price, who has to approve it, and the records it creates.

Requested for
Laptop model
Accessories
Estimated cost$1,099
    Data model

    REQ, RITM, SCTASK.
    Finally clicked.

    As a fulfiller I worked tasks without thinking about where they sat. As an admin it matters: SLAs, reports and notifications all hang off a specific table. Hover a table to see how it connects.

    sc_request

    Request

    The order, one per checkout. Closes when all its items close.

    REQ0010011
    sc_req_item

    Requested Item

    The laptop itself, holding every answer from the form.

    RITM0010024
    sc_task

    Catalog Task

    One piece of work for one team.

    SCTASK0010031
    sysapproval_approver

    Approval

    One row per approver and their decision.

    Maria Lopez · Approved
    task_sla

    Task SLA

    A running clock attached to any task.

    62% · In progress

    All three task tables extend task, which is why they share number, state, assignment group and work notes.

    Service levels

    When is it
    actually due?

    Same four-hour target, two different answers depending on the schedule. Pick when the ticket came in and compare a business-hours clock with a 24x7 one.

    9–5 weekdays (Pacific)—Used for catalog tasks and laptop requests
    24x7—Used for Priority 1 incidents
    Requested Item

    Laptop fulfilled in 5 business days

    Starts
    Item is New Laptop Request
    Pauses
    Waiting on approval
    Stops
    Request closed
    Catalog Task

    Hardware team responds in 4 hours

    Starts
    Assigned to Hardware Fulfillment
    Pauses
    State is Pending
    Stops
    Work in Progress
    Incident

    P1 resolved in 4 hours, 24x7

    Starts
    Priority is 1
    Pauses
    On Hold
    Stops
    Resolved

    Retroactive start is on: if a P3 becomes a P1, the clock counts from when the incident was first opened.

    The one that catches people: with a schedule attached, “1 day” means 24 hours of schedule time, which is three working days on a 9–5 schedule. For five business days I set the duration to 40 hours.
    Knowledge

    Articles people
    can actually follow.

    I wrote KB articles at work, so this part felt familiar. What's new is the admin side: who can read, who can write, and the approval step before anything goes live. Click through an article's life.

    Draftv1.0

    Connect to the store Wi-Fi

    IT Self-Service · Network & Wi-Fi

    Can readNorthPeak employees
    Can contributeIT Service Desk, IT Managers
    PublishingApproval required
    Under the hood

    Data, access
    and a bit of code.

    The laptops come from my AssetTrack app as a CSV. The import matches on serial number, so running an updated file changes existing records instead of creating duplicates. Try it with coalesce on and off.

    Records in hardware table0
    Inserted0
    Updated0
    Duplicate serials0

    Start by loading the first file.

    Scripts I wrote for it

    A UI policy handles showing and hiding. Anything that needs real logic, like checking a date against today, gets a script.

    Field ACL check order
    sc_task.u_asset_tag→task.u_asset_tag→sc_task.*→task.*→*.*
    validate-needed-by.js
    Troubleshooting

    Six ways it breaks,
    and how I found each one.

    I break the configuration on purpose, then track it down: reproduce it, check the record, check the config, and fix the cause rather than the symptom. Click one to read how it went.

    Where it's at

    Designed and written.
    Waiting on an instance.

    The design, scripts, flow, knowledge articles and troubleshooting notes are done. ServiceNow's free developer instances are on a waitlist right now, so I'll start building as soon as mine comes through and add screenshots as I go.