Skip to content
Current/ Help Center

Fortinet: registered assets, support dates, and your renewal list

6 min read · Updated Sep 5, 2026

Fortinet's FortiCloud holds the registration record for every Fortinet unit you have ever registered: the serial, the model, and the date its support entitlement runs out. This connector reads that record and hangs each asset off the matching Current company, so the renewal conversation starts from a list instead of a spreadsheet somebody rebuilt. Current reads Fortinet and can never register, transfer, or retire an asset.

Note
Why this connector is worth connecting
A Fortinet unit that falls out of support stops receiving FortiGuard updates. That makes an expired entitlement a security fact before it is an inventory fact, and it is the same list your account team needs to build a renewal quote — the contract SKU sits right next to the date.

What Current syncs

Data setWhat Current storesWhere it lands
PartnersOne row per FortiCloud grouping Current can see: an asset folder when Fortinet returns one, otherwise the account, otherwise a single bucket holding everything. This is the key you map to a Current companyThe mapping panel on the Fortinet card
Registered assetsPer serial: the product model, the label you typed in FortiCloud, the registration date, and whether the unit is decommissioned. Every Fortinet product registers here — FortiGate, FortiSwitch, FortiAP, FortiMail, FortiAnalyzer and the restThe mapped company's network panel and its business reviews
Support and entitlement datesThe latest entitlement end date on each unit, the level and type behind that date (for example Unified Threat Protection, FortiCare), and a state of covered, expiring within 60 days, or expiredThe company's network panel, the alert band, and the renewal list
ContractsThe contract number, the SKU a renewal quote is built from, and the latest contract term end date. Current keeps this separate from the entitlement date because the two disagreeing usually means a renewal was bought and not yet appliedThe company's network panel
Product-model lifecycleEnd of support and end of renewal for the model itself. A unit past end of renewal cannot be renewed at all, only replacedThe company's network panel, as a replacement line rather than a date
Note
The latest date wins, not the earliest
A FortiGate usually carries several entitlements at once — a hardware warranty, FortiCare, a UTP bundle — and they expire on different days. Current reads the latest of them. A box whose hardware warranty lapsed while its FortiCare subscription runs to 2027 is supported, and it shows as covered.

Create the API user in FortiCloud

  1. 1
    1 · Open the IAM portal and create a permission profile
    Sign in at support.fortinet.com/iam as an administrator and go to Permission Profiles. Create a profile that grants read access to Asset Management. Grant nothing beyond the portals you actually want read: the profile is the only place Fortinet lets you limit what this credential can do, because the token it issues always comes back with write scope attached.
  2. 2
    2 · Add the API user
    Go to Users ▸ Add New ▸ API User and pick the profile you just made. Fortinet creates a machine account, so nobody has to stay signed in for the sync to run.
  3. 3
    3 · Download the credentials once
    On the success screen choose Download Credentials. The downloaded file holds the API key, the password, and the client IDs this user is entitled to. Keep it somewhere your team can reach — you cannot open it again from Fortinet.
  4. 4
    4 · Paste the three values into Current
    Open Settings → Integrations → Fortinet. Paste the API key as the username, the password, and the client ID — assetmanagement is the one that reaches asset data. Press Test connection. Current exchanges the three for a short-lived token on every run and never stores a token.
Heads up
Do not press Download Credentials a second time
Fortinet resets the API user's password every time that button is used. An admin who re-downloads the file to check a value has changed the password, and the connection that was working stops working with no other warning. If it happens: download once more, paste the new values into the Fortinet card, and press Test connection.

Matching Fortinet groupings to companies

Fortinet has no endpoint that lists your partners. Its multi-tenancy is account- and folder-shaped, so Current works out the roster from the assets that come back: an asset folder when Fortinet returns one, otherwise the account, otherwise a single bucket. Current pairs each grouping with a Current company by normalized name — punctuation and Inc/LLC/Ltd-style suffixes stripped — and pairs only when exactly one company matches. Anything ambiguous waits on the card for you to pick. A mapping you set by hand is never overwritten by a later automatic match, and mapping one attaches its assets within seconds rather than waiting for the next sync.

Note
One partner row is a normal result
If you register every unit into one FortiCloud account with no folders, Current finds exactly one grouping and every asset maps to it. Nothing is missing. To split assets per partner, organize them into asset folders in FortiCloud — Fortinet recommends folders and organizational units over the older asset groups — and the next sync picks the folders up as separate rows.

What the numbers cover

Fortinet's asset search requires a filter: you ask for assets whose support ends before a date, or you ask for one serial. There is no call that returns everything. Current sweeps with a date ten years out, which reaches the whole estate in practice, but a unit carrying no entitlement date at all may not come back at all. So the card counts assets with a known entitlement date rather than claiming a full inventory. A unit Current cannot date shows as "no entitlement date on file": it never counts as covered, never counts as expired, and never raises an alert.

The read-only guarantee

Two Fortinet endpoints exist in this connector's code: the sign-in call that mints a token, and the asset search. Everything else on the FortiCare API — registering a serial, consuming a licence code, downloading licence keys, editing an asset's description or address, managing folders, decommissioning a unit — is absent from the connector, so it cannot be reached by a bug either. The match is exact rather than by prefix, which matters here: the asset search and the register and decommission calls all live under the same path prefix, and a prefix rule would have admitted the writes alongside the read.

Note
Two layers, and you control the second
Fortinet issues one token scope for both reading and writing, so there is no read-only token to request. The code allowlist above is the first layer. The permission profile you built in step 1 is the second, and it is the one on Fortinet's side — keep it to read access on Asset Management.

Sync schedule and rate limits

Current syncs Fortinet every six hours. Support-contract dates change on human timescales, so there is nothing to gain from running it more often, and Fortinet allows only ten failed calls per hour on an account before it throttles. That budget is why Current never retries a rejected credential: one wrong password retried in a loop would spend the whole hourly allowance in seconds and lock out an account your own admins may also be using. A rejected sign-in stops the run and shows you what Fortinet said.

Troubleshooting

What you seeWhat it meansWhat to do
Fortinet rejected these credentials (HTTP 400 or 401)Fortinet answered and refused the sign-in. Three causes, in the order worth checking: the client ID points at a portal this API user cannot reach; the password was reset by a second Download Credentials; or the permission profile no longer covers Asset ManagementCheck the client ID against the downloaded credentials file (assetmanagement reaches asset data), then re-download the credentials and paste the new password, then check the profile in the IAM portal
Fortinet signed Current in but refused the asset list (HTTP 403)The credential authenticates, but its permission profile does not grant read access to Asset Management — or the client ID belongs to a different portalEdit the API user's permission profile to include read access to Asset Management, then press Test connection
Connected, and no assetsThe credential works and the search came back empty. Most often the client ID reaches a portal with no asset data, or the FortiCloud account is provisioned in a region whose assets live in a separate instanceConfirm the client ID first. If your account is EU-provisioned, tell us — the asset service Current calls is documented as a single global host, and a regional one is not published
Fortinet is rate-limiting this account (HTTP 429)Fortinet throttled the request. This says nothing about the credentialsWait a few minutes and press Test connection again. Current stops rather than retrying, to protect the hourly allowance
Couldn't reach FortinetNo response inside fifteen seconds. Network or a Fortinet outageTry again shortly. The scheduled sync retries on its own
Assets you expected are missingEither they carry no entitlement date, or they are registered to a FortiCloud account this credential cannot seeCheck one serial in the FortiCloud asset portal. If it has no entitlement dates, the search cannot return it. If it sits in another account, that account needs its own API user
Note
If your partners own their own FortiCloud accounts
Fortinet's Partner view lets a partner review assets registered to customer accounts in the portal. Fortinet documents no programmatic equivalent, so a shop whose partners each own their FortiCloud account may connect successfully and see only its own internal serials. The card reports the roster size it actually found, so you will know within one sync.
Was this helpful?