Skip to main content

Error Messages

The error messages Connect can show you, what each one means, and how to fix it. Search the page for the text in front of you. Angle brackets mark values that change, so <host> is your hostname and <status> an HTTP status code.

If you have a symptom rather than a message, start with Connector troubleshooting or Integration troubleshooting.

Where errors appear​

If this failedLook here
A Connector jobSettings > Connectors > Jobs. Hover the job's Status
A connection testThe alert under the form on Integrations > (your account) > Provision, with a line per step. An on-prem test also lands on the Jobs page as a Test Connection job
Discovery or export for an accountIntegrations > (your account) > Provision, under Resource Errors
A change request export or withdrawalThe request's page under Change, on its Exports tab
A saveOn the form, or in a red message at the top of the page
A REST or GraphQL callThe response body, with an HTTP status code. See API authentication
Connector startup or pairingThe appliance console, and the Connector log. See Where logs live

How to read a job error​

Causes are chained with <-. The text on the left is Connect's description of what failed. Each <- takes you one step closer to the underlying reason.

Cannot reach Infoblox host 192.0.2.10 <- connect ECONNREFUSED 192.0.2.10:443

Connect couldn't reach the grid, and the reason was a refused connection.

Long messages are cut short. A long vendor error can lose its ending. The Connector log has the full text.

A job at In Progress is not stuck. Connect retries failures it expects to clear on their own, such as a host that was briefly unreachable, and marks the job Error only once the retries run out.

Connection tests​

The Test button on an account's Provision page reports its steps in order: DNS lookup, TCP connection, TLS certificate, and Sign-in and read. The first one to fail stops the test, and the rest are marked as not run. The step's own text names the host and the reason; a certificate failure is worded as in Certificate errors below. A ServiceNow test that passes adds a fifth step, Export setup; see The Export setup step.

These appear instead of a step list, for a test that stopped before reaching the host or lost track of its result.

MessageWhat it meansWhat to do
This account has no saved credentials yet. Save the form, then Test.The account exists and is awaiting its first provisioningFill in the Provision page and save, then test
Could not read the saved credentials for this account. Save the form again, then Test.The stored credentials couldn't be decryptedRe-enter them on the Provision page and save
Connection testing is not available for <Product>.Connection testing isn't offered for this providerAWS, Azure, and Security Manager are verified from their own pages instead
Select a connector and save this account before testing it.Panorama, NSX, FMC and FortiManager reach your network only through a ConnectorPick one in the Connector field and save
Connector <id> is not registered. Register it under Settings, then test again.The account names a Connector that no longer existsPair a Connector under Settings > Connectors and select it on the Provision page
The connector did not report a result in time. Confirm it is online under Settings > Connectors, then try again. A test still running reports there.The Connector didn't pick the test up within two minutesConfirm it shows green under Settings > Connectors. A test that did run appears on the Jobs page as a Test Connection job
Could not queue the test for the connector. Try again in a moment.Connect couldn't queue the testTransient. Test again
The saved credentials do not match this account's provider. Save the form, then Test.The stored credentials don't belong to this account's providerSave the Provision page again, then test
The saved configuration does not match anything <Product> can test. Save the form, then Test.The saved configuration is incompleteComplete the Provision page and save, then test
A connection test is already running for this account. Try again in a moment.An earlier test hasn't finishedWait for its result
That connection test could not be found. Run the test again.The test is no longer on recordTest again
Waiting for connector <name>., Waiting for connector <name> to run the test., A test is already queued for connector <name>.The test is queued for that Connector. The message adds It has not checked in yet, so it may be offline. or It last checked in <time> ago, so it may be offline. when the Connector hasn't polled recentlyConfirm the Connector is running and shows green under Settings > Connectors
Lost contact with Connect while waiting for the result. The test may still have run. Check Settings > Connectors, or try again.Your browser lost its connection to Connect while waiting for the resultCheck the Jobs page for the result, or test again
Could not start the test. Check that you can reach Connect, then try again.The request to start the test never reached ConnectCheck your own connection, then test again
The test was accepted but returned no job to track. Try again.The test started, but there was nothing to trackTest again

What a failing step says​

A failed step names the system, the host, and the reason, in one of these forms. <Product> is the system's name. An on-prem test says the Connector where a cloud test says Connect.

MessageWhat it means
Authentication failed. Check the credentials for <Product> at <host>.The host answered 401 or 403
<Product> returned 404 at <host>. Check the host or instance name, and any table or path in the configuration.The host answered, but not at that path
NSX Manager answered 404 at <host>. Check the account's Manager Type, since a Local Manager and a Global Manager serve different API roots, and that the host is an NSX Manager.NSX's reading of the row above: the host answered, but not under the configured Manager Type's API root
<Product> is rate limiting requests. Try again shortly.The host answered 429
<Product> returned HTTP <status> at <host>.Any other HTTP error
<Product> did not respond at <host> within <n> seconds.No answer within the step's time limit
Could not resolve the address for <Product> at <host>. Check the hostname.DNS lookup failed
Could not resolve the address for <Product> at <host>. The DNS lookup did not answer within <n> seconds.The resolver didn't answer in time
<Product> at <host> did not accept a connection on port <port> within <n> seconds. A firewall that drops traffic rather than rejecting it looks like this.The TCP connection timed out
<Product> at <host> did not complete a TLS handshake on port <port> within <n> seconds.The connection opened, but TLS didn't finish in time
<Product> at <host> did not complete a TLS handshake on port <port>. The connection closed during the handshake, which usually means the port is not serving TLS.The port answers, but not with TLS
Connection refused by <Product> at <host>. Check the port and any firewall between Connect and the host.The host, or something in front of it, refused the connection
The connection to <Product> at <host> was reset.The connection dropped mid-request
<Product> at <host> is unreachable from Connect.No route to the host
Request to <Product> at <host> failed.Anything else, with the underlying reason appended
No host is configured for <Product>.The Provision page has no host to test
Plain HTTP is configured, so there is no certificate to check.The TLS step was skipped because the URL isn't HTTPS
Not run.An earlier step failed first

What a passing test says​

The Sign-in and read step reports what the test managed to read, which is worth checking even on a pass.

ProductMessage
GuardicoreConnected to Guardicore and read the asset list.
PanoramaConnected to Panorama at <host> and authenticated. Device group '<name>' has <n> of <m> firewalls connected. With none connected it adds Exports wait for a connected firewall.
NSXReached VMware NSX <Manager Type> at <host> and authenticated. <Manager Type> is the account's setting: Local Manager or Global Manager (Federation)
Cisco FMCConnected to Cisco Firewall Management Center <version> at <host> and authenticated. Domain '<domain>' found. The domain is the account's Domain setting, Global when blank
Fortinet FortiManagerConnected to Fortinet FortiManager <version> at <host> and authenticated. ADOM '<adom>' (FortiOS <version>, workspace mode <on or off>) found. The ADOM (administrative domain) is the account's ADOM setting, root when blank. A version the administrator is not allowed to read is left out
ServiceNowConnected to ServiceNow and read table "<table>" and the table registry. The IP field "<field>" is present. With no rows in the table: Connected to ServiceNow and read table "<table>" and the table registry. It has no rows, so the IP Field Name was not checked. An import account whose user cannot read the registry still passes, with but not the table registry (sys_db_object), so exports from this account need a role that reads it in place of and the table registry. An account saved without Import Settings: Connected to ServiceNow and read the table registry.
IllumioConnected to Illumio (organization <id>).
SentinelOneConnected to SentinelOne.
InfobloxConnected to Infoblox (WAPI v<version>) at <host>. Answered by <member>. The grid accepts bulk requests. The version shown is the one the test negotiated. The middle sentence names the grid member that owns the address, adding a Grid Master Candidate with read-only API access on (or off) when it is one, and through a node address rather than its VIP <address> when an HA member was reached on a node's own address. The last sentence reports what the grid said to a bulk read; the other endings, which still pass the test but stop the first discovery run, are under Infoblox below

The Export setup step​

A ServiceNow test that passes adds an Export setup step, which checks what the exports need inside your instance. It never fails the test: rows reach the staging tables either way, and an account may only import. A warning lists every problem it found, one after another. A Not checked result is shown like a step that didn't run.

MessageWhat it meansWhat to do
Every staging table has a transform map: "<map>" into <table>.Each staging table has at least one active map, and every map's target table exists. Each map is listed, separated by commasNothing
Not created yet: <table>. Saving the form creates the staging tables.A staging table doesn't exist. Several are listed separated by commasSave the Provision page. If the table still doesn't appear, the application user lacks personalize_dictionary
No active transform map reads <table>, so exported rows stay in staging.Exports load rows into the table, but nothing moves them to a target. Several tables are listed separated by orCreate the transform maps for the exports you use
The application user sees no transform maps at all: none exist, or it cannot read sys_transform_map. Until an active map reads a staging table, exported rows stay there.Either the instance has no transform maps, or the application user can't read themUnder System Import Sets > Administration > Transform Maps, look for maps whose Source table is a staging table. If there are none, create them. If they exist, don't add more: give the application user import_admin so Test can read them
Transform map "<map>" targets <table>, which does not exist. or Transform map "<map>" has no target table.The map would fail on every rowSet the map's Target table to a table that exists
Not checked: the application user cannot read <table>.The application user has no read access to sys_transform_map, or to sys_db_objectFor sys_transform_map, exports work without it; for Test to check the maps, give the user import_admin. For sys_db_object, which the exports need, give the user a role that reads it, such as itil, asset or sn_change_read
Not checked: ServiceNow answered the <table> read with HTTP <status>. or Not checked: <table> could not be read.The step's own read failedTest again
Not checked: ServiceNow did not answer in time. or Not checked: the test ran out of time.The instance answered slowly, and the test stopped waiting before the step's reads finished. The second means no time was left for them at allTest again. The connection itself passed
Not checked without the table registry.The application user can't read sys_db_object, which the exports need as wellSee the Sign-in and read message about the table registry

Failures from the read itself​

These come from the Sign-in and read step, where the host answered and the response wasn't what the integration expects.

MessageWhat it meansWhat to do
<host> answered HTTP <status>, redirecting to <target>. Something other than the WAPI answered: a Grid Master Candidate with read-only API access off, a non-master member, or a proxy in front of the grid.The host is up, but the address is not serving the Infoblox WAPI. A redirect to another Infoblox hostname is a member sending the request to the Grid Master's GUISet Host Address to the Grid Master. In Grid Manager, Grid > Grid Manager > Members shows which member the address belongs to and whether it is the master
<host> answered HTTP <status> with a page titled "<title>". Something other than the WAPI answered: ...The same, where the host served a web page instead of redirecting. The title says whose page: Grid Manager's own, or a proxy or sign-in portal in front of itAs above. A title from something other than Infoblox means a proxy is in the path between the Connector and the grid
No access token was returned. Check that the hostname is the management API.Something other than the Guardicore API answered the sign-in, such as a proxy or SSO pageHostname should be the management center's hostname, such as customer-12345.saas.guardicore.com. A pasted https:// or path is dropped, so check the host itself
The response was not an asset list. Check that the hostname is the management API.Guardicore signed Connect in, then something other than its API answered the asset readAs above
The response was not a workload list. Check the API endpoint.Illumio answered with something other than workloadsAPI URL must end in /api/v2/
The response was not an asset list. Check the API base URL.SentinelOne answered with something other than assetsAPI Base URL should be the console URL with no path
ServiceNow did not answer as the Table API. Check the instance name.Something other than the Table API answeredInstance Name is the subdomain, such as acme. A pasted https://acme.service-now.com is reduced to it; any other domain is not an instance name
ServiceNow answered, but the table registry (sys_db_object) could not be read. Check the instance name and that the application user can read tables.An export-only account whose application user can't read sys_db_object. An import account reports the same gap inside its passing message insteadGive it a role that reads sys_db_object, such as itil, asset or sn_change_read; personalize_dictionary writes that table but does not read it
Connected to ServiceNow and read table "<table>", but it has no field named "<field>". Set IP Field Name to the field's internal name.The table was read, but ServiceNow left the field out of the row because no column has that name. Discovery would run and produce items with no IPsSet IP Field Name to the column's internal name (ip_address, not IP Address), shown under System Definition > Tables
ServiceNow at <host> did not issue an access token (HTTP <status>: <reason>). Check the Client ID and Client Secret, the OAuth client's grant type and application user, and that the instance allows the client credentials grant.The token endpoint refused the sign-in. A wrong secret and a grant type that is not enabled get the same access_denied answer. With HTTP 403 the advice reads An access control on the instance refused the request insteadRe-enter Client ID and Client Secret, then check the client's grant type, its application user and the grant-type property under Create the OAuth client. For a 403, check the instance's IP access controls
ServiceNow at <host> did not answer as the OAuth token endpoint. Check the instance name.Something other than ServiceNow answered the token request, such as a proxy or sign-in pageCheck Instance Name, as for the Table API message above
ServiceNow at <host> issued an access token but rejected it on the API (HTTP 401). A REST API Access Policy on the instance may not allow OAuth for this API.A token was issued, but the instance's access policy for that API does not include OAuthAdd an OAuth inbound authentication profile to the REST API Access Policies covering the Table, Import Set and Batch APIs
ServiceNow at <host> issued a token, but its OAuth client is securely scoped and cannot reach the platform APIs (HTTP 403). Set the client's Scope Restriction to Broadly Scoped, or add a REST API auth scope covering the Table, Import Set and Batch APIs.The OAuth client was left at its default Scope Restriction of Securely ScopedSet the client's Scope Restriction to Broadly Scoped under System OAuth > Application Registry
ServiceNow at <host> issued a token but refused the request (HTTP 403: <reason>). The application user lacks a role: snc_platform_rest_api_access where the instance enforces it, or read access to the table.A token was issued, but the application user is missing a role the API needs. ServiceNow's own reason is quotedGive the user the missing role from the table under Create the OAuth client
Device group '<name>' not found on Panorama. Available: <names>The sign-in worked, but no device group on Panorama has that nameSet Device Group under Provision to one of the names listed, exactly as shown. The same message fails a job if the device group is renamed later
Signed in to Panorama at <host>, but this administrator role cannot read its device groups or managed devices. Grant it the privileges the Connector needs. (<cause>)Panorama accepted the credentials and issued an API key, then refused the reads that follow, so the administrator role lacks XML API privileges the Connector usesGive the role the privileges listed under Before you start
Reached NSX Manager at <host>, but it answers as a <type> and the account's Manager Type is <type>. Set Manager Type to <type> under Advanced and save.The host is an NSX Manager of the other type. The configured Manager Type failed, so the test tried the other one, which answeredSet Manager Type under Advanced on the Provision page to the type named, save, and test again
Cisco Firewall Management Center at <host> is version <version>. Group export uses dynamic objects, which need FMC 7.0 or later.The sign-in worked, but the release has no dynamic object APIUpgrade FMC, or point the account at an FMC on 7.0 or later
Domain '<name>' was not found on Cisco Firewall Management Center at <host>. Set Domain under Advanced to one of the domains this user can see, written as FMC prints it: <names>.The sign-in worked, but the account's Domain is not one the user can seeSet Domain under Advanced to one of the names listed, exactly as shown, or leave it blank for Global
Signed in to Cisco Firewall Management Center at <host>, but this user cannot manage dynamic objects in domain '<domain>'. Give it the Object Manager > Modify Object Manager permission. (<cause>)FMC accepted the credentials and then refused the read of the domain's dynamic objectsGive the user's role the Object Manager > Modify Object Manager permission in that domain. See Before you start
ADOM '<name>' was not found on Fortinet FortiManager at <host>. Set ADOM under Advanced to one of the ADOMs this administrator can see: <names>.The sign-in worked, but the account's ADOM is not one the administrator can seeSet ADOM under Advanced to one of the names listed, exactly as shown, or leave it blank for root
Signed in to Fortinet FortiManager at <host>, but this administrator cannot work in ADOM '<adom>'. Give its Admin Profile read-write access to the ADOM's policy objects and set its JSON API Access to Read-Write. (<cause>)FortiManager accepted the credentials and then refused the read of the ADOM's address objectsGive the administrator's profile read-write access to policy objects in that ADOM, and set its JSON API Access to Read-Write

A test proves the host is reachable, the credentials are accepted, for Panorama that the role can read device groups and devices and that the Device Group you named exists, for FMC that the release is 7.0 or later, the Domain exists and the user can read its dynamic objects, and for FortiManager that the ADOM exists and the administrator can read its address objects. The first real job proves the rest, such as that an NSX user can create Groups or an FMC user can change them.

Certificate errors​

Connection tests, Infoblox discovery, and the Panorama, NSX, FMC and FortiManager exports word an untrusted certificate the same way. <Product> is the system's name: Panorama, NSX Manager, Cisco Firewall Management Center, Fortinet FortiManager, Infoblox, Illumio, and so on.

MessageWhat it meansWhat to do
<Product>'s TLS certificate at <host> is not trusted. Enable "Allow Self-Signed Certificate" on the account, or install a certificate from a publicly trusted CA on <Product>. (<reason>)The certificate is self-signed, expired, issued by a private CA, or names a different hostname. <reason> gives the specific faultFor a self-signed certificate, turn on Allow Self-Signed Certificate under Advanced on the account's Provision page. For an expired certificate or a hostname mismatch, replace the certificate on the system itself. The job fails straight away rather than retrying, so it stays until you replace the certificate or change the setting
<Product>'s TLS certificate at <host> is not trusted. Install a certificate from a publicly trusted CA on <Product>. (<reason>)The same fault, on an integration with no self-signed option: the cloud integrations other than InfobloxReplace the certificate on the system itself. Connect reaches these systems over the internet and always requires a publicly trusted certificate

Any Connector job​

MessageWhat it meansWhat to do
This connector build (v<version>) does not handle job type "<type>" for provider "<provider>". Upgrade the connector to claim this job.The account uses an integration this Connector build doesn't supportUpdate the Connector. See Updates
Account <id> is not assigned to this connectorThe Connector's account list doesn't include this account yet, or the account's Connector was changed after the job was queuedUsually nothing: the job stays In Progress and runs once the account reaches the Connector. Infoblox discovery fails the job instead. If it persists, check the account's Connector on its Provision page
The connector could not refresh its account list from Connect, so it could not confirm that account <id> is assigned to it. Try again.The Connector couldn't reach Connect to refresh its accountsThe job stays In Progress and is retried. If it persists, run firemon-connector --check-connectivity
Exceeded maximum claim attempts (5)The job was retried until Connect gave up, with no more specific reason recordedCheck that the target system is reachable from the Connector, and that the Connector wasn't restarted while the job was running
Failed to fetch credentials for account <id>: <status>The Connector couldn't retrieve the account's credentialsRe-enter the credentials on the account's Provision page and save
Failed to fetch connector accounts: <status>The Connector couldn't retrieve its list of accountsRun firemon-connector --check-connectivity. See Network Requirements
Infoblox credentials are missing required fields (hostAddress, username, password)The account was saved without a value the integration needs. Panorama, NSX, FMC and FortiManager report this the same way, as Panorama credentials ..., NSX Manager credentials ..., Cisco Firewall Management Center credentials ... and Fortinet FortiManager credentials ..., without naming the fieldsComplete the account's Provision page and save
Failed to parse Infoblox credentials JSONThe stored credentials can't be read. Panorama, NSX, FMC and FortiManager report this the same way, with their own namesRe-enter the credentials on the Provision page and save. Contact FireMon Support if it happens again
Network error: <reason>A call from the Connector to Connect failedRetried automatically. If it persists, see Network Requirements
Connector shut down mid-job; re-enqueued for retry.The Connector stopped for a restart or a self-update while running the jobRetried as soon as the Connector is back

Palo Alto Panorama​

A job that could not reach Panorama at all uses the sentences under What a failing step says, with Panorama as the product and the Connector's own reason in parentheses, as in Connection refused by Panorama at <host>. Check the port and any firewall between the Connector and the host. (<cause>). The rest are below.

MessageWhat it meansWhat to do
Panorama request timed out after 30000msPanorama accepted the connection but didn't answer in time. On the sign-in it reads Panorama did not respond at <host> in time. (Panorama request timed out after 30000ms)Retried automatically. Repeated timeouts usually mean Panorama is under heavy load
Panorama network error: <reason>The connection dropped part-way through a requestRetried automatically. <reason> gives the network fault
Panorama API returned HTTP <status>: <reason>Panorama rejected the requestA 403 reading Invalid Credential means the Username or Password is wrong. A 403 later in a run is an API key Panorama invalidated, which the Connector renews once on its own, so one that persists means the administrator account is missing a permission. See Before you start
Panorama keygen failed: <reason>Panorama refused to issue an API keyAlmost always the wrong credentials, or an administrator account without XML API access. Re-enter them under Provision
API key not found in keygen responsePanorama answered the key request without a keyConfirm the administrator account has XML API access
Panorama request failed: <reason> (PAN-OS code <n>: <name>)Panorama accepted the request and reported a failure. <reason> is Panorama's own message, and the code and name are from Palo Alto's error code table when Panorama sent oneCode 22, a timed-out session, and conditions that clear on their own, such as a commit already running or a locked device group, are retried. Code 16 means the administrator's role lacks the right to that operation; code 10 means a rule still references the object. Anything else needs fixing in Panorama
Device group '<name>' not found on Panorama. Available: <names>The name has to match a device group that already exists in Panorama, exactly and case-sensitively. Test on the Provision page reports this before any job runsCorrect Device Group under Provision, using a name from the Available list
No connected firewalls in the device group, so nothing was pushed to Panorama. Check that the device group has at least one connected firewall.No firewall in the device group was connected to Panorama when the job ranRetried automatically while a firewall reconnects; after the last attempt the job fails with this message. Check Panorama > Managed Devices > Summary. The job runs again when the Group next changes or the Connector restarts
Job <id> finished with result '<result>': <details>A commit or push finished unsuccessfully. <details> is Panorama's explanationOpen the job in Panorama under Tasks for the full text
Job <id> did not complete within <ms>ms (status: <status>, progress: <n>%)A commit or push was still running when Connect stopped waitingRetried automatically. A large device group under load can need more than one attempt
commit failed: <reason>Panorama refused the commitA commit lock held by another administrator is the usual cause, and clears on its own
commit job failed: <reason>The commit started and then failed or timed outThe Group's addresses are registered but not yet active on the firewalls. Retried on the next job
push failed: <reason>Panorama refused to push the device group to its firewallsCheck the device group still has connected firewalls under Panorama > Managed Devices
push job failed: <reason>The push started and then failed or timed outRetried on the next job
Register failed on firewall <serial>: <reason>Registering the Group's addresses failed on one firewallConfirm the firewall is connected and the administrator role allows User-ID. Other firewalls are unaffected
Panorama User-ID request failed for <n> of <m> reported entries: <detail>Panorama accepted the request and rejected some of the IP-to-tag entries in it<detail> names the entries it rejected. The rest of the Group registered normally
Unregister failed on firewall <serial>: <reason>Removing addresses that left the Group failed on one firewallAs above. Until a later run succeeds, the DAG keeps addresses that should have gone
This group's addresses are in place on the firewalls. The commit or push that failed was for other groups in this account.A note on a Complete job: another Group's DAG change in the same account failed to commit or push. This Group's addresses were registered on the firewalls, which takes effect without a commitNothing for this Group. See the failed job for the other Group
DAG: <reason>Creating or updating the Dynamic Address Group failed<reason> gives the cause, usually a missing permission on the device group

VMware NSX​

A job error leads with what to check and quotes the failing call in parentheses: the operation, the HTTP status NSX returned, and the start of its error body, as in (NSX PATCH /infra/domains/default/groups/firemon-<id>: HTTP 403 - {"error_code":...}). The lead sentences are those under What a failing step says, with NSX Manager as the product, plus the ones below.

MessageWhat it meansWhat to do
Authentication failed. Check the credentials for NSX Manager at <host>. (NSX POST /api/session/create: HTTP 401 (check NSX username/password) - <body>)NSX rejected the loginRe-enter Username and Password under Provision. NSX locks an account for 15 minutes after five failed logins, and any attempt during the lockout restarts it, so correct the credentials before saving again
Authentication failed. Check the credentials for NSX Manager at <host>. (<operation>: HTTP 403 - <body>)The account signed in but isn't allowed to perform the operationGive the account permission to create and update Groups in the default domain
Reached NSX Manager at <host>, but it answers as a <type> and the account's Manager Type is <type>. Set Manager Type to <type> under Advanced and save.Every Group in the job failed under the configured API root, and the other root answered: the account's Manager Type is wrongSet Manager Type under Advanced on the Provision page to the type named, save, and press Test. Saving the account does not re-run the job: the export resumes when the Group next changes or the Connector restarts
NSX Manager answered 404 at <host>. Check the account's Manager Type, since a Local Manager and a Global Manager serve different API roots, and that the host is an NSX Manager. (<operation>: HTTP 404 - <body>)The path is absent on this Manager and the other Manager Type's root did not answer eitherCheck NSX Manager Host, then press Test on the Provision page. See NSX
NSX Manager is rate limiting requests. Try again shortly. (<operation>: HTTP 429 - <body>)NSX's per-client API limit was reachedRetried automatically
NSX Manager returned HTTP <status> at <host>. (<operation>: HTTP <status> - <body>)NSX rejected the request. <body> is NSX's own errorRead <body>. A 5xx is retried automatically; a 400 names what NSX would not accept
NSX Manager returned HTTP <status> at <host>. (<operation>: HTTP <status> (redirects to <url>) - <body>)The host redirected the request instead of answering itThe account usually points at a load balancer or reverse proxy. Point NSX Manager Host at NSX Manager
NSX Manager did not respond at <host> in time. (<operation>: timed out after 30000ms)The Manager accepted the connection and didn't answer in timeRetried automatically. A Manager that is consistently slow is worth checking
<operation>: HTTP <status> - session expired, re-authenticatingThe reused NSX session had expiredRetried automatically with a fresh login. Worth a look only if it repeats
<operation>: NSX Manager Host "<host>" is not a valid hostnameThe saved host cannot be dialed at allCorrect NSX Manager Host under Provision: a hostname or IP address, with a port as host:port if needed
<operation>: response missing JSESSIONID cookie or X-XSRF-TOKEN headerThe sign-in succeeded but returned no usable sessionSomething between the Connector and NSX is stripping cookies or headers. Point the account at NSX Manager directly
<operation>: invalid JSON response: <reason>The host returned something other than JSONUsually a proxy or captive portal answering in NSX's place
NSX accepted <path> but could not apply it (realization status ERROR). Check its Status under Inventory > Groups in NSX Manager; the environment's limit on group members is the usual cause.NSX took the update and then failed to realize the group. <path> ending in -ipv4 or -ipv6 names a member group of a mixed Group; the group that nests it was not touchedOpen the group under Inventory > Groups and read its status. Split the Connect Group into narrower Groups if it is over your environment's member limit
NSX accepted <the group, or its IPv4 or IPv6 member group> but had not applied it within 30 seconds (status <status>). Check its Status under Inventory > Groups in NSX Manager.A warning on a Complete job: NSX was still applying the group, or one member group of a mixed Group, when the Connector stopped waiting. <status> is NSX's own state: IN_PROGRESS or UNINITIALIZED is normal; SANDBOXED_REALIZATION_PENDING on a Global Manager means the group conflicts with a site's local configuration and waits for an administratorCheck the group's Status column after a minute. It usually finishes on its own; a sandboxed group needs the conflict resolved on the Global Manager
NSX accepted <the group, or its IPv4 or IPv6 member group>, but its status could not be read afterwards. Check its Status under Inventory > Groups in NSX Manager.A warning on a Complete job: the update went through, but the status request after it failedCheck the group's Status column. Worth a look only if it repeats
NSX group would have <n> members; the API allows at most 25000 per group - split the Connect Group across multiple NSX groupsThe Group holds more addresses than a single NSX group accepts, both families counted togetherNarrow the Group's filters, or split it into several Groups and export each. See Group size limits
No CIDRs fetched for list <id>Connect couldn't read the Group's addresses before the syncRetried automatically

Cisco Firewall Management Center​

A job error leads with what to check and quotes the failing call in parentheses: the operation, the HTTP status FMC returned, and FMC's own message, as in (FMC POST object/dynamicobjectmappings: HTTP 403 - Invalid domain. Object belongs to another domain.). The lead sentences are those under What a failing step says, with Cisco Firewall Management Center as the product, plus the ones below. The job's Summary names the host and domain, then what changed: Objects Created, Descriptions Updated, Mappings Added, Mappings Removed, or No changes (<n> groups in sync).

MessageWhat it meansWhat to do
Authentication failed. Check the credentials for Cisco Firewall Management Center at <host>. (FMC POST auth/generatetoken: HTTP 401 (check FMC username/password) - User authentication failed.)FMC rejected the sign-inRe-enter Username and Password under Provision
Domain '<name>' was not found on Cisco Firewall Management Center at <host>. Set Domain under Advanced to one of the domains this user can see, written as FMC prints it: <names>.The account's Domain is not one the user can see. Every Group of the account fails with itSet Domain under Advanced to one of the names listed and save. Saving does not re-run the job: the export resumes when the Group next changes or the Connector restarts
Cisco Firewall Management Center at <host> is version <version>. Group export uses dynamic objects, which need FMC 7.0 or later.The FMC is older than 7.0, so it has no dynamic object API. Every Group of the account fails with itUpgrade FMC, or point the account at an FMC on 7.0 or later
Signed in to Cisco Firewall Management Center at <host>, but this user cannot manage dynamic objects in domain '<domain>'. Give it the Object Manager > Modify Object Manager permission. (<operation>: HTTP 403 - <body>)The user signed in but may not create or change dynamic objects thereGive the user's role that permission in the domain
Domain '<domain>' on Cisco Firewall Management Center at <host> cannot change this dynamic object, which belongs to another domain. Point the account at the domain that owns it, or delete the object there. (<operation>: HTTP 403 - Invalid domain. ...)The object exists in an ancestor domain, so the account's domain can see it but not change itSet Domain to the domain that owns the object, or delete the object there once no rule references it
Cisco Firewall Management Center already has a dynamic object named "<name>" that domain '<domain>' cannot see or change, since names are unique across all domains. Delete it in the domain that owns it, or point the account at that domain. (<operation>: HTTP 500 - The object name <name> already exists.)The Group's object exists in a domain the account cannot see, usually after the account's Domain was changedDelete the old object in its domain, after removing it from any rule, or set Domain back
Cisco Firewall Management Center at <host> no longer has the dynamic object this update was for, so it was deleted by hand. The job is retried and the retry recreates it. (<operation>: HTTP 404 - Cannot find Dynamic object...)An object in the mapping request was deleted in FMC between the Connector's read and its writeRetried automatically; the retry recreates the object
Cisco Firewall Management Center at <host> refused the mapping values the Connector sent. Contact FireMon Support with this job's details. (<operation>: HTTP 404 - Invalid mapping values: ...)FMC rejected a value in the request, which the Connector should never sendContact FireMon Support with the job's details; the job fails the same way on every run until it is fixed
Cisco Firewall Management Center is rate limiting requests. Try again shortly. (<operation>: HTTP 429 - <body>)FMC's per-address request limit was reached, or another client was writing at the same timeRetried automatically
Cisco Firewall Management Center returned HTTP <status> at <host>. (<operation>: HTTP <status> - <body>)FMC rejected the request. <body> is FMC's own messageRead <body>. A 5xx is retried automatically; a 400 or 422 names what FMC would not accept
Cisco Firewall Management Center did not respond at <host> in time. (<operation>: timed out after 30000ms)FMC accepted the connection and didn't answer in timeRetried automatically. An FMC that is consistently slow is worth checking
Another client signed in to Cisco Firewall Management Center at <host> as this user: FMC allows one API session per user. Give the Connector its own user. (<operation>: HTTP 401 - FMC rejected the session token)Something else signed in to FMC as the Connector's user. FMC keeps one API session per user, so that sign-in invalidated the Connector's token, and a fresh sign-in was rejected the same way within the attemptA job is retried automatically; test again by hand. If it repeats, another Connector or a script is using the same user: give the Connector a user of its own
<operation>: FMC Host "<host>" is not a valid hostnameThe saved host cannot be dialed at allCorrect FMC Host under Provision: a hostname or IP address, with a port as host:port if needed
<operation>: response missing the X-auth-access-token or DOMAINS headerThe sign-in succeeded but returned no usable sessionSomething between the Connector and FMC is stripping headers. Point the account at FMC directly
<operation>: invalid JSON response: <reason>The host returned something other than JSONUsually a proxy or captive portal answering in FMC's place
This group was deleted in Connect. Its FMC dynamic object was left in place. ...A note on a Complete job: the Group is gone and its object was retainedDelete the object in FMC once no rule references it
No access control rule references this group's new FMC dynamic object, so it has no effect on any firewall yet. ...A note on the Complete job that created the object: its mappings are in place, but nothing uses it yetAdd the object to an access control rule and deploy that policy once. See Use the object in your policy. Later jobs do not repeat the note
<n> addresses were left out of this group's FMC dynamic object because FMC cannot map them: <addresses>. The other members are in sync.A note on a Complete job: those addresses of the Group are not a bare IP, a CIDR or a range whose start is not above its endCorrect or remove those addresses in the Group. The rest of the Group is exported

Fortinet FortiManager​

A job error leads with what to check and quotes the failing call in parentheses: the method and URL, FortiManager's own status code and message, as in (FortiManager set /pm/config/adom/root/obj/firewall/addrgrp/firemon-...: 1 of 1 operations failed - ...: -9001 value too long). FortiManager reports a failure as a negative status code and a short message, so the code is the part to read. The lead sentences are those under What a failing step says, with Fortinet FortiManager as the product. The job's Summary names the host and ADOM, then what changed: Address Groups Written, Address Objects Written, or No changes (<n> groups in sync), followed by any install lines. The Install:, Installed:, Install skipped: and Install failed: lines describe every Group of the account synced in the same batch, so a job can show a line about another Group's install.

MessageWhat it meansWhat to do
Authentication failed. Check the credentials for Fortinet FortiManager at <host>. (FortiManager exec /sys/login/user: ... Login fail)FortiManager rejected the sign-in. The same lead sentence with an HTTP 401 or HTTP 403 in the parentheses is a later call FortiManager refused: a session it dropped, which is retried with a fresh sign-in, or an administrator without JSON API accessRe-enter Username and Password under Provision, and check the administrator's JSON API Access in FortiManager
ADOM '<name>' was not found on Fortinet FortiManager at <host>. Set ADOM under Advanced to one of the ADOMs this administrator can see: <names>.The account's ADOM is not one the administrator can see. Every Group of the account fails with it. A shorter form without the list of names appears when the ADOM disappears during a jobSet ADOM under Advanced to one of the names listed and save. Saving does not re-run the job: the export resumes when the Group next changes or the Connector restarts
ADOM "<name>" cannot be used: a FortiManager ADOM name has no slash or control character. Set ADOM under Advanced to the name FortiManager lists under System Settings > All ADOMs, or leave it blank for root.The account's ADOM holds a character FortiManager cannot take in a name, so nothing was sent. Every Group of the account fails with it, and Test reports it the same wayCorrect ADOM under Advanced and save
Signed in to Fortinet FortiManager at <host>, but this administrator cannot work in ADOM '<adom>'. Give its Admin Profile read-write access to the ADOM's policy objects and set its JSON API Access to Read-Write. (<operation>: ... -11 No permission for the resource)The administrator signed in but may not read or change objects thereGive the profile read-write access to the ADOM's policy objects, and JSON API Access Read-Write
Another session holds the workspace lock on ADOM '<adom>' of Fortinet FortiManager at <host>, so nothing was written. The job is retried. (<operation>: ... locked by <admin>)The ADOM runs in workspace mode and another session holds its lockRetried for a while. If the lock is still held, the job fails with this message and runs again when the Group next changes or the Connector restarts. For an account with installing on, a restart syncs the Group again, and the failed job is closed once the Connector's background install check finds the Group in sync with no install left to retry; the job's summary then says whether it installed. A lock left behind by a closed session can be released under System Settings > All ADOMs
The Connector's session on Fortinet FortiManager at <host> ended while it held the workspace lock on ADOM '<adom>', so FortiManager discarded the batch and nothing was written. The job is retried. (<operation>: session rejected ...)FortiManager dropped the Connector's session while the ADOM was locked, which discards the lock and every change not yet committed: a FortiManager restart or HA failover during the job, or an administrator disconnecting the sessionRetried; the retry writes the batch again. If it keeps happening, check FortiManager for restarts or disconnected sessions
The Connector's session on Fortinet FortiManager at <host> ended while the batch was being committed to ADOM '<adom>', so whether it was written is unknown. The job is retried. (<operation>: ... may already have been applied; ...)FortiManager dropped the Connector's session as the batch was committed, before the Connector could read back whether the commit appliedRetried; the retry reads the ADOM and writes only what is missing
The install of <package> to <device> (<vdom>) did not complete: Another session holds the workspace lock on ADOM '<adom>' of Fortinet FortiManager at <host>, so the install was not attempted. The objects are in the ADOM; only the install remains.Another session held the ADOM's workspace lock when the install was due: taken after this sync committed its objects, or already held when the sync started, in which case nothing was written eitherRetried for a while; the retry installs the package once the lock is free. If the lock is still held, the job fails with this message, and the next sync of the Group installs the package while it still shows Modified
The install of <package> to <device> (<vdom>) did not complete: The Connector's session on Fortinet FortiManager at <host> ended while it held the workspace lock on ADOM '<adom>', so the install stopped. The objects are in the ADOM; only the install remains.FortiManager dropped the Connector's session while it was installing, which discards the lock and any staged install with it. The objects were committed before the install beganRetried; the retry installs the package if it still shows as anything other than Installed
The install of <package> to <device> (<vdom>) did not complete: <reason>. The objects are in the ADOM; only the install remains.The install hit a problem that may pass: the task did not finish within 15 minutes, the device did not answer, FortiManager was busy, or another of the Connector's jobs was working in the same ADOM. When the reason begins Connect could not confirm that installing is still turned on, the read of the account's settings from Connect failed instead; check the Connector's connection to ConnectRetried for a while; the retry installs the package. If it keeps failing, the job fails with this message: read <reason>, fix the cause, and install the package yourself or change the Group
The policy packages to install could not be resolved: <reason>. The objects are in the ADOM; only the install remains.FortiManager did not answer the package status, the where-used search or the package listing in timeRetried for a while; the retry resolves and installs. A FortiManager that is consistently slow is worth checking
FortiManager address group <name> would have <n> members; FortiOS allows at most 5,000 per group. Split the Connect Group across narrower Groups.One address family of the Group exceeds the group size FortiOS acceptsNarrow the Group's filters, or split it into several Groups and export each. See Group size limits
Fortinet FortiManager did not respond at <host> in time. (<operation>: timed out after 30000ms)FortiManager accepted the connection and didn't answer in timeRetried automatically. A FortiManager that is consistently slow is worth checking
<operation>: <n> of <m> operations failed - <url>: <code> <message>FortiManager refused the request with a code the Connector has no specific reading for. -9001 is a value FortiOS cannot hold, such as a name over 79 characters; -10015 an object something still references; -3 an object or path that does not existRead FortiManager's own message. A code that means FortiManager was busy is retried; the rest fail the Group until the cause is fixed
FortiManager task <id> (<title>) failed in state <state> with <n> error(s): <device>(<vdom>): <detail>An install the Connector ran failed on FortiManager or on the device. For a reason that will not pass on its own, the Group's job completes with the failure in its summary as Install failed: ...; for one that may, such as a device that did not answer, the job is retried with the message aboveRead <detail>, which is FortiManager's own task line. Fix the cause and install the package yourself, or change the Group to trigger another sync
<n> addresses were left out of this group's FortiManager address groups because FortiOS cannot hold them as an address object: <addresses>. The other members are in sync.A note on a Complete job: those addresses of the Group are not a bare IP, a CIDR or a range whose start is not above its end, or are IPv6 ranges whose object name would pass FortiOS's 79-character limitCorrect or remove those addresses in the Group. The rest of the Group is exported
This group was deleted in Connect. Its FortiManager address groups and their member objects were left in place. ...A note on a Complete job: the Group is gone and its objects were retainedDelete them in FortiManager once no policy references them
No policy references this group's new FortiManager address group yet, so it has no effect on any FortiGate. ...A note on the Complete job that created the group: it is in the ADOM, but nothing uses it yetReference the group from a policy and install that package once. See Use the group in your policy
Install skipped: <package> to <device> (<vdom>): preview carries changes this sync did not make: <entries>A line in a Complete job's summary: the account installs after a sync, but the package also holds changes Connect did not make, so the Connector left the install to youInstall the package yourself once those changes are meant to go out. See Installing policy packages
Install: no policy package references the synced groupsA line in a Complete job's summary: the account installs after a sync, but no policy uses the groups this sync checked, directly or through a group that contains them, so there was nothing to installNothing, unless a policy was meant to reference the group
Install: no device is assigned the referencing packages (<packages>)The packages that use the changed groups are not assigned to any device, and have never been installed to oneAssign the package to its device in FortiManager and install it once yourself
Install: nothing changed, so no package was installedThe account installs after a sync, but this sync changed no group's members or addresses, and no Group was checked for a pending install: the jobs are not retries, or the Groups have no address group in FortiManager yet. On a job the Connector closed after a restart, its background install check found no policy referencing the account's groupsNothing
Install: nothing changed, and no package holds changes awaiting installationA line in a job's summary, covering every Group of the account synced in the same batch: no group's members or addresses changed (a rename may still have rewritten a comment), at least one Group was checked for a pending install because its job is a retry, the Connector had just started, or an earlier sync left it a pending install to check, and no package in the ADOM holds changes awaiting installationNothing
Install: the referencing packages (<packages>) hold no changes awaiting installationA line in a job's summary, covering every Group of the account synced in the same batch: no referenced group's members or addresses changed, and the packages that use those Groups' groups show Installed on every device they have been installed to. A device a package is assigned to but has never been installed to is left for you to install the first timeNothing, or install the package once to a device it has never been installed to
Install: the referencing packages were installed while this sync waited, so none was installed againA line in a job's summary: the packages that awaited an install for the account's groups were installed by another job, or by someone in FortiManager, while this sync waited for its turn. Seen mostly on a job the Connector's background install check closed after a restartNothing
Install: could not resolve the packages to install: <reason>The Connector could not read where the Group's groups are used or where their packages are installed. The groups are correct in the ADOM. When the reason may pass, such as a FortiManager that did not answer in time, the Group's own job is retried with the error above; sibling jobs of the account complete with this lineRead <reason>; it is one of the messages above. Install the package yourself, or change the Group to trigger another sync
Install skipped: <package> to <device> (<vdom>): preview carries none of this sync's objectsFortiManager rendered nothing for that device, so there was nothing to install thereNothing. The package's pending changes reach only its other devices, or the package does not use these groups on that device
Install skipped: <package> to <device> (<vdom>): Another session holds the workspace lock on ADOM '<adom>' ... so the install was not attempted.A line in a job's summary: the objects are committed, and another session held the ADOM lock when the install was due. The Group's own job retries the install when the package had been installed to that device before; for a device it was never installed to, the job completes, since the first install there is yours. Sibling jobs of the same account show the line tooNothing while a job retries. Otherwise install the package yourself once
Install skipped: <package> to <device> (<vdom>): Another of the Connector's jobs is working in ADOM '<adom>' of Fortinet FortiManager at <host>, so this install was not attempted.A line in a job's summary: another job of the Connector's was installing in the same ADOM, or, with workspace mode on while the Connector's background install check runs after a restart, reading and writing there. The Group's own job is retried when the package had been installed to that device before, with the error The install of ... did not complete: Another of the Connector's jobs is working ...; for a device it was never installed to, the job completes, since the first install there is yours. Sibling jobs of the same account show the line tooNothing while a job retries. Otherwise install the package yourself once
Install skipped: <package> to <device> (<vdom>): installing was turned off for this accountInstall policy packages after a sync was turned off while the sync was installing, so the Connector previewed and installed nothing moreNothing. Install the package yourself when the change should go out
Install skipped: <package> to <device> (<vdom>): Connect could not confirm that installing is still turned on for this account, so the install was not attempted (<reason>)A line in a job's summary: before each preview the Connector reads the account's settings back from Connect, and that read failed. The Group's own job is retried when the failure may pass and the package had been installed to that device before; for a device it was never installed to, the job completes. Sibling jobs of the same account show the line tooUsually nothing; a retry reads it again. If it persists, check the Connector's connection to Connect
FortiManager task <id> (<title>) is waiting for an operator (state <state>); continue or cancel it in FortiManagerAn install the Connector ran stopped on a prompt only a person can answer in FortiManager's task monitorContinue or cancel the task there

Infoblox​

MessageWhat it meansWhat to do
Cannot reach Infoblox host <host>The grid didn't answer at allCheck Host Address on the Provision page, and that the Connector can reach the grid on TCP 443. Retried automatically
Failed to auto-negotiate Infoblox WAPI version: <reason>The host answered, but not as a WAPI version Connect can use. The host is reachable, so this isn't a network problem. <reason> is the host's own answer: a <host> answered HTTP <status> ... sentence is the address not serving the WAPI at all, worded as in Failures from the read itselfFor a <host> answered HTTP <status> ... reason, set Host Address to the Grid Master; a Grid Master Candidate or other member answers this way. Otherwise check the grid's WAPI version. Wrong credentials report an authentication failure instead, not this message. Pressing Test on the Provision page reports the same reason without waiting for a run
Infoblox discovery incomplete: <n> items uploaded, <m> networks could not be fetched. The next attempt continues where this one stopped.The run couldn't read every network, so its results are partial. The last sentence appears only when something was uploadedRetried rather than failed. What was read stays, cleanup waits, and the retry carries on from where the run stopped. If it repeats with nothing uploaded, the grid is refusing some reads
Infoblox at <host> is refusing requests from the API user with HTTP <status>; <n> items were uploaded before the run stopped.The grid is up and rejecting this user's reads. The message ends with what to check: the API user's permissions on a 403, otherwise the hostOn 403, check the API user's permissions. Otherwise confirm the host is the Grid Master and that its WAPI serves this user
Infoblox at <host> refused the bulk request handler with HTTP <status>, and the host did not report read-only API access; <n> items were uploaded before the run stopped. Point the account at the Grid Master, or check the API user's request handler and Grid Member permissions.The grid rejected the request handler discovery reads through, and the member that answered didn't say it has read-only API access, which is the one case discovery works around by reading networks one at a timeSet Host Address to the Grid Master, or check the API user's permission to use the WAPI request handler and to read Grid Member objects. A Grid Master Candidate with read-only API access is read one network at a time once the API user can read Grid Member objects
Infoblox at <host> answered for no network: <n> networks were uploaded as their CIDR only. Check the API user's permissions.Every network came back as a CIDR alone, the shape an API user without address permissions seesCheck the API user's permissions. Retried rather than failed
Infoblox at <host> paused at the 12-hour run budget: <n> of <m> networks fetched this cycle. The next attempt continues where this one stopped.The attempt reached its 12-hour limit while the grid was not returning addresses for the networks it was asked about. What was read earlier staysThe job retries on its own and carries on from where it stopped. If it repeats, look at what the grid is refusing to read; the Test button on the Provision page says what it answers
Infoblox at <host> fetched nothing more within 12 hours: <n> of <m> networks fetched this cycle, <k> were not fetched in time.A whole 12-hour attempt passed without reading one more network. Networks read earlier in the cycle stay, and the next scheduled run carries on from thereCheck that the grid answers reads at all; the Test button on the Provision page says. Repeated failures are worth raising with FireMon Support

A network whose addresses couldn't be read during a run that otherwise finished is kept as its CIDR and counted in the job Summary as with errors, not reported as a job error. A Summary ending in cleanup skipped means stale networks were deliberately left in Inventory. Both are covered in Infoblox: Details and edge cases.

What the Infoblox test says about bulk reads​

After signing in, the test asks the grid which member owns the address, then sends one bulk read, the kind discovery depends on, and ends its Sign-in and read message with the answer. The member sentence reads Could not tell which member answered. (<reason>) when the API user can't read Grid Member objects, which is informational and never fails the test. A refused bulk read doesn't fail the test either, since the sign-in worked. What the first discovery run does with it depends on the member sentence, and the ending says which: when the sentence names a Grid Master Candidate with read-only API access on, the message ends so discovery fetches networks one at a time. and the run reads the grid that way, which takes hours on a large grid; otherwise it ends so discovery cannot use bulk requests on this host. and a run through the Connector stops at its first bulk read with the refused the bulk request handler error above. Fixing that before the run saves the wait. An account with no Connector is tested from the cloud, and its test ends so discovery fetches networks one at a time. after any refusal.

EndingWhat it meansWhat to do
The grid accepts bulk requests.The host is serving the full WAPINothing. Discovery will run as described
The grid refused the bulk request handler with HTTP <status>, so discovery fetches networks one at a time.The member sentence already named a Grid Master Candidate with read-only API access on, which refuses every bulk read by design, so discovery reads this member one network at a time. (Allow: <methods>) follows the status when the grid sends that headerExpect a long run on a large grid; the job pauses and retries on its own until the grid has been read in full
The grid answered the bulk request handler with HTTP 405 (Allow: GET): POST is not accepted, as on a member with read-only API access, so discovery cannot use bulk requests on this host.The host takes reads but not the bulk read, but didn't say so on the member read, which is how a Grid Master Candidate with Read Only API access answers when the API user can't read Grid Member objects. Allow: GET is the host's own statement of what it acceptsSet Host Address to the Grid Master, or give the API user read access to Grid Member objects so discovery can read this member one network at a time
The grid refused the bulk request handler with HTTP 403: the API user may not use it, or the host is a member with read-only API access, so discovery cannot use bulk requests on this host.Either the API user lacks permission to use the WAPI request handler, or the host is a read-only member that the member read didn't identifyCheck the API user's permissions in Grid Manager, and that Host Address is the Grid Master
The grid answered the bulk request handler with HTTP 404: no /request handler is served at this address, so discovery cannot use bulk requests on this host.The host has no bulk handler at the negotiated version, and the member read didn't identify it as a read-only candidateConfirm Host Address is the Grid Master and that nothing in front of it rewrites paths
WAPI v<version> has no bulk request handler, so networks are fetched one at a time.The grid's WAPI predates 2.5. Discovery still works, one network at a timeNothing, unless the grid is large; then expect a long run
Could not tell whether the grid accepts bulk requests. (<reason>)The bulk read didn't get a clear answer, for the reason quoted, usually a timeoutTest again. If it repeats, the first run will report what the grid does

Cloud integrations​

These integrations run from the cloud rather than through the Connector. Discovery errors appear under Resource Errors on the account's Provision page, one per resource type and region. Most of the text comes from the vendor's own API. The messages below are Connect's own.

Exports behave differently. A decommission export records its error, and hovering the tag in History shows it. A change request export or withdrawal records its outcome on the request's Exports tab, with the error when it fails and, for the messages below that Connect recognizes, what to do; the request's state is the same either way.

Message in ExportsWhat it meansWhat to do
the credentials could not be read: <reason>Connect couldn't read the target account's saved credentialsRe-enter them on the account's Provision page and save the request again
the account has no saved credentialsThe target account has nothing savedProvision the account, then save the request again
the rule addresses could not be resolved: <reason>Looking up the members of a Group or inventory item failedSave the request again. If it repeats, contact FireMon Support
provider <provider> has no change request exportA Boundary targets an account whose integration doesn't take change requestsRemove the account from the Boundary's Target(s), then save the request again
the export threw: <reason> or the withdrawal threw: <reason>The target refused the write, for the reason quotedSee the target's section below

Infoblox without a Connector​

An Infoblox account with no Connector selected is discovered from the cloud. Besides the Infoblox messages that apply to any run, its Resource Errors can show these. Each one stops discovery for the run and holds cleanup, so nothing is removed from Inventory.

MessageWhat it meansWhat to do
Infoblox listed no networks; check the host and the API user's permissions and network views. Inventory cleanup is held.The grid returned no networks at all, which is how a user who can't see them, or a host that isn't the grid, answersCheck Host Address, and the API user's permissions and network views
Infoblox grid stopped answering; <n> of <m> networks on this page were not fetched: <reason>The grid stopped responding partway throughCheck that the grid is up and reachable from the internet. The next daily run tries again
Infoblox is refusing requests from the API user with HTTP <status>; ... or Infoblox is refusing the bulk request handler with HTTP <status>; ...The grid is up and rejecting this user's reads, or the bulk read discovery usesOn 403, check the API user's permissions. Otherwise confirm Host Address is the Grid Master

Azure​

MessageWhat it meansWhat to do
No matching federated identity record found for presented assertion (an AADSTS70021 or AADSTS700213 message)Azure found no federated credential matching the token Connect presentedTenant ID or Client ID on the Provision page doesn't match the identity the provisioning command created, or the CloudDefense federated credential was removed. Correct the IDs, or run the provisioning command again. See Azure
The client '<id>' with object id '<id>' does not have authorization to perform action '<action>' over scope '<scope>' or the scope is invalid. (AuthorizationFailed)The identity signed in but holds no role for that actionRun the provisioning command again, which restores the role assignment. For Group export, the account must have been created with Read & Write
Failed to get encrypted account credentialsThe account's stored credentials couldn't be read. Any cloud export can report thisRe-enter them on the Provision page and save

The first two appear under Resource Errors on the account's Provision page. For an export, the same problems leave the IP Group missing in Azure. Connect stops exporting a Group that has grown past 5,000 entries, and its IP Group keeps its previous contents. An IP Group a firewall rule still references stays in Azure when its Group is deleted. See Integration troubleshooting.

Guardicore​

These come from checking a change request before export. Any one of them cancels the export, so none of the request's rules reach Guardicore. Rules an earlier export left there are withdrawn: each is disabled, or deleted when Guardicore can no longer express it or the request no longer has that rule. The request's Exports tab shows the message after the export threw:, followed by the reason when the withdrawal failed too. The credentials message is the exception: Connect can't sign in, so Guardicore is left as it is.

MessageWhat it meansWhat to do
Rule <id>: negated sources/destinations are not supported by Guardicore policy rules. Guardicore only supports negation on label-based exclusions, not CIDRs.A rule uses NOT on a source or destinationRewrite the rule without negation, then evaluate it again
Rule <id>: its sources resolve to no addresses, which Guardicore would read as any address. Check the rule's Groups and inventory items.The rule's sources name no CIDR and no Any, and every Group or inventory item among them holds no addresses, or the rule names no sources. Destinations report the same wayAdd members to the Group, or name a CIDR, then evaluate it again
Rule <id>: custom protocol (<protocol>) is not supported by Guardicore. Guardicore only supports TCP, UDP, and ICMP.A rule names an IP protocol by numberExpress the rule in TCP, UDP or ICMP terms, then evaluate it again
Rule <id>: PortRangeSize is a Connect-side boundary concept and has no Guardicore equivalent.A rule uses a Max Ports service, which belongs in a Boundary rather than a requestReplace it with specific ports
Rule <id>: no services defined. At least one protocol/port is required.A rule has no servicesAdd at least one service to the rule
Rule <id>: ICMPv6 cannot be expressed in Guardicore, whose ICMP matching is IPv4 only.A rule uses an ICMPv6 or All ICMPv6 serviceLeave ICMPv6 out of requests bound for Guardicore
Rule <id>: port 0 is not accepted by Guardicore. Ports run from 1 to 65535.A TCP or UDP service starts or ends at port 0Start the port or range at 1
CR <id> has no rules to exportThe change request has no rulesAdd rules to the request
CR <id> has a rule without an id. Save the request again to assign one.The request was saved before Connect gave each rule an idOpen the request and save it
Guardicore credentials for CR <id> are missing a hostname, username or passwordThe target account's saved credentials are incompleteCorrect the credentials on the account's Provision page, then save the request again

ServiceNow​

These come from saving the Provision page or from an export; both create the staging tables when they're missing and add any columns an existing table lacks. A failure while saving still lets the save succeed, so the first sign is usually a missing staging table, or rows that fail to arrive. A decommission export shows its message under Decommission > History; a change request export shows it on the request's Exports tab.

MessageWhat it meansWhat to do
Could not resolve sys_import_set_row sys_id.Connect couldn't read the table that staging tables are built fromThe application user can't read sys_db_object. Give it a role that reads it, such as itil, asset or sn_change_read, then save the Provision page again
Staging table creation did not return a sys_id.ServiceNow didn't confirm the new staging tableCheck for u_connect_change_requests_staging and u_connect_decommissioned_assets_staging under System Definition > Tables. See ServiceNow
ServiceNow rejected a dictionary change for <table> (status <status>): <body>The staging table exists, but a column couldn't be added or widenedUsually the application user lacking personalize_dictionary. Correct its roles, then save the Provision page again
ServiceNow Batch API left <n> of <m> import rows unserviced for <table>, having hit its size or time limit. The others were processed. and the same for dictionary changesServiceNow stopped part-way through a batch of rows or columnsTry again. Rows it did load are in the staging table, so for an export coalesce in the transform map first
Staging table setup did not finish within 20 seconds. The next save or export finishes it.The instance was slow while the Provision page was savedNothing, unless it repeats. Columns still missing are added by the next save or export
ServiceNow rejected an import row for <table> (status <status>): <body>The Import Set API refused a row. A 403 is an application user without import_admin or import_transformer; a 400 names a staging table that doesn't existFix the account's roles, or save the Provision page again to recreate the table
ServiceNow did not answer as the Batch API when sent <n> import rows for <table>. Check the instance name. and the same for dictionary changesSomething other than the Batch API answered, such as a proxy or sign-in page. Nothing was loadedInstance Name is the subdomain, such as acme. A pasted https://acme.service-now.com is reduced to it; any other domain is not an instance name
ServiceNow answered <n> of <m> import rows for <table> and did not account for the rest. and the same for dictionary changesThe Batch API answered for some of the rows or columns and said nothing about the others, which it does not do on its ownTry again. Rows it did load are in the staging table, so for an export coalesce in the transform map first
ServiceNow answered an import row for <table> with status <status> but not with an Import Set result: <body>Something other than the Import Set API answered a row, such as a proxy or sign-in pageCheck Instance Name, as for the Batch API message above
ServiceNow loaded <n> row(s) into <table>, but no active transform map has that table as its source, so the rows stay there.The rows are in the staging table, and ServiceNow ran no map on themCreate the map as the ServiceNow page says, with the staging table as its Source table. For a change request, save it again. A retry loads the rows again, so coalesce first. An earlier version of Connect reported this as a transform error with the message Invalid table
ServiceNow loaded <n> row(s) into <table> but reported <m> transform error(s): <message>The rows are in the staging table, but a transform map failed on them. ServiceNow's message names the cause, such as Invalid table <name> for a map whose target table doesn't existFix the map's target table, field maps or script. For a change request, save it again. A retry loads the rows again, so coalesce first
ServiceNow credentials for CR <id> are missing an instance name, client id or client secretThe target account's saved credentials are incompleteCorrect the credentials on the account's Provision page, then save the request again

Illumio​

MessageWhat it meansWhat to do
GET <path> returned <value> (<type>) for X-Total-Count header, GET <path> returned invalid total <value> for X-Total-Count headerThe PCE's response was missing the item count Connect needs to page through resultsConfirm API URL ends in /api/v2/. Without the path, something other than the PCE answers
response-async response is missing the Location headerA large read (more than 500 workloads) didn't start properlyLet the next discovery run. Contact FireMon Support if it persists

Security Manager​

MessageWhat it meansWhat to do
SIP registration not found for client <id>Security Manager isn't registered with FireMon Insights, so Connect has no route to itComplete Connect Your SIP Instance. Discovery resumes on its own

Pairing and starting the Connector​

MessageWhat it meansWhat to do
Missing registration codePairing was attempted with no codeEnter the code from Settings > Connectors
Invalid or expired registration codeThe code doesn't exist, has been used already, or is more than 24 hours oldGenerate a new code under Settings > Connectors and pair again
Too many attempts. Try again later.Too many pairing attempts came from one IP addressWait, then try again with a code you have confirmed
Failed to register: <message>Connect rejected the pairing request. <message> is the reasonA bad or already-used code needs a new one. During first boot, a server error is retried on its own while the appliance finishes getting an address
Registration failed. Check the code and try again, or press Ctrl+C to restart the wizard.The console wizard's version of the same failureRe-enter the code, or generate a new one
Registration response missing apiKey or connectorIdPairing was accepted but the response was incompletePair again. Contact FireMon Support if it happens twice
Credentials file <path> is missing; pair the connector via the console wizard.The Connector started as a service without being pairedPair it. On the appliance, use the console menu
Credentials file <path> is invalid (<reason>); quarantined — re-pair via the console wizard.The credentials file can't be read as credentials, and has been set asidePair again with a new registration code
Credentials file <path> is unreadable (<reason>); fix its ownership/permissions so the firemon-connector user can read it, or re-pair via the console wizard.The file is there, but the account running the Connector can't open itCorrect the file's owner and permissions, or pair again
Cannot write credentials to <dir>: <reason>. Run as root, or set FIREMON_CONFIG_DIR to a directory you can write. The registration code was not used.The account running the Connector can't write the directory it stores credentials in. The Connector checks this before it sends the code, so the code is still goodRun it with sudo, or point FIREMON_CONFIG_DIR at a directory you can write, then pair with the same code
Cannot create credentials directory <dir>: <reason>The Connector couldn't create the directory it stores credentials inGive the account running the Connector write access to the parent directory
Another connector instance is running (<path>). Stop it, then start the connector again.A second Connector is already running from this installationStop the other one. Two Connectors sharing an identity make jobs stall and restart. See Run one Connector per identity
Another connector instance is running (<path>). Waiting for it to exit.The same, but this Connector is waiting rather than exitingAs above. It starts as soon as the other one stops
Another connector instance is running. Waiting up to <n>s for it to exit..., Another connector instance is running. Waiting for it to exit...Expected while the Connector updates itself and the new version waits for the old oneNothing, unless the message keeps repeating

Connectivity check​

firemon-connector --check-connectivity tests DNS and TCP 443 against every endpoint the Connector uses.

MessageWhat it meansWhat to do
DNS resolution failedThe hostname didn't resolveYour resolver is unreachable, or *.firemon.cloud isn't permitted. See Network Requirements
timeout after 5000msThe name resolved, but the connection never completedAn egress firewall is dropping the traffic rather than refusing it
One or more checks failed.The summary line, shown whenever any endpoint failedRead the per-endpoint lines above it. If the API passes and the WebSocket fails, WSS is blocked on its own

Connector updates​

These appear in the Connector log. A failed update is discarded, and the Connector carries on running its current version.

MessageWhat it meansWhat to do
Release signature verification failed — update rejectedThe download isn't a genuine releaseContact FireMon Support. Repeated failures suggest the download is being intercepted
Checksum mismatch: expected <a>, got <b>The download doesn't match its published checksum, usually because a proxy altered or truncated itRetried at the next update check
Download failed: <status> <text>The release couldn't be downloadedConfirm the Connector can reach the updater endpoint. See Network Requirements
Download stalled: no data for 60000msThe download started and then stopped sending data, usually a proxy holding the connection openRetried at the next update check

Saving a Boundary or change request​

Validation failures arrive together, in one message:

This request is invalid and contains the following errors:
* Name is required
* Invalid Source CIDR or IP: 10.0.0.300
MessageWhat it meansWhat to do
Name is requiredThe Boundary or change request has no nameEnter one
A score (0-100) is requiredThe Boundary's action is Score, but the score is missing or outside 0-100Enter a score in range
Invalid Source CIDR or IP: <value>A source is neither a valid IP address nor a valid CIDR. Destinations report the same wayCorrect the value
Source cannot be The Internet. Use specific CIDRs, groups or inventory items in a change request.The Internet belongs in a Boundary, which judges addresses, not in a request, which states them. Destinations report the same wayReplace it with specific CIDRs, Groups or inventory items
Source mixes negated and plain objects. Negate all of them or none.Some of the rule's sources use NOT and others don't, which an export cannot state as one list. Destinations report the same wayNegate every object on that side, or none of them
Invalid custom protocol: <value>The IP protocol number is outside 0-254Correct it
Invalid TCP port start: <value>The port is outside 0-65535. UDP, and the end of a range, report the same wayCorrect it
Invalid TCP port range: <start> to <end>The first port is higher than the lastSwap them
Invalid ICMPv4 type: <value>The ICMP type is outside 0-254. ICMPv6, and ICMP codes, report the same wayCorrect it
sourcesMaxHosts should be undefined or greater than zero.One of the statement's host or port limits is zero or negative. The other five limits report the same way, each naming its own fieldClear the field, or enter 1 or more
Invalid IP or CIDR: <values> on the form, or Invalid internal CIDR or IP: <values> from the APIAn entry in your internal address space under Settings > Boundaries is not a valid IP or CIDRCorrect the entries listed and save again

A source, destination or service missing the field its type needs, such as a Cidr with no cidr or a TCP service with no ports, is answered with Internal Server Error. ID: <id> over GraphQL, or an empty 500 over REST, rather than a validation message. Send every field the schema lists for the type. The Connect app can't produce these.

Permissions and availability​

MessageWhat it meansWhat to do
Connect is not enabled for client <id>Your organization doesn't have Connect enabledContact FireMon Support
Resource lists are not enabled for client <id>Your organization doesn't have Groups enabled. Some messages call a Group a resource listContact FireMon Support
Decommission workflows are not enabled for client <id>Your organization doesn't have Decommission enabledContact FireMon Support
Change requests can only be updated by an admin, the original creator, or the last updater.You didn't create or last change this request, and you aren't an administratorAsk its creator, or an administrator, to make the change
Change requests can only be deleted by an admin, the original creator, or the last updater.The same rule, applied to deletingAs above
The update type and project of a decommission workflow cannot be changed.Update and Project are fixed when a workflow is createdCreate a replacement workflow with the values you want, then delete the original
UnauthorizedYour roles don't cover this action in this projectSee Users and roles
Permission deniedApproving or rejecting a Decommission candidate without the role to do it in that projectSee Users and roles
Credentials are only accessible by administrators.Group Credentials can be viewed only by an administratorAsk an administrator
Credentials can only be modified by administrators.The same, applied to changing themAs above
Error getting permissions: <message>The app couldn't load your permissionsReload the page. If it persists, sign out and back in
Missing ID tokenYour session has expiredSign in again

Not found​

These mean the item is gone, or was never there. A browser tab left open while someone else deleted the item is the usual cause. Reload the page, then check whether the item still exists.

MessageShown when
Boundary not foundOpening or deleting a Boundary
Change Request not foundOpening, evaluating or deleting a change request
Resource list not found, List not foundOpening, saving or deleting a Group
Nested resource list not foundRemoving a nested Group that has already gone
Resource list member change candidate not foundApplying a pending membership change that has already been applied
Resource list member change candidate action of <a> does not match the specified action of <b>Applying a pending change that has changed since the page loaded
Workflow not found, Decommission Workflow <id> not foundOpening, saving or deleting a decommission workflow
Match not foundActing on a decommission candidate that has already gone
Client settings not foundReading settings your organization has never saved

Dynamic list URL​

Errors returned by the URL that serves a Group's addresses to a firewall. See Dynamic lists.

MessageWhat it meansWhat to do
Not FoundThe URL isn't in the expected formCopy it again from the Group's page
List not foundThe URL is well-formed, but names a Group that no longer existsCopy the current URL from the Group's page
Missing Authorization headerThe request carried no credentialsSend HTTP basic authentication
Missing password or API Key in Authorization headerA username was sent with no passwordSend both
Missing username in Authorization headerA password was sent with no username, and it isn't a valid API keySend both
Invalid API KeyThe API key belongs to a different organizationUse a key from the organization that owns the Group
Invalid credentialsNeither the API key nor the username and password matchedCheck the credentials under Settings > Group Credentials, or use an API key as the password with the username shown on the Group's page

In the Connect app​

Form validation names the field it applies to.

MessageWhat it means
<Field> is requiredA required field is empty, named by its own label: Password is required, Connector is required, Tenant ID is required, and so on
Name must be less than 128 charactersThe account name is too long
Provider is required, Project is requiredBoth are set when the account is created, under Integrations
<Label> Required, such as AWS Account ID RequiredThe system's own identifier is missing on New Account
AWS Account ID must be 12-digit number, such as 123456789012.The AWS account ID isn't 12 digits
Azure Subscription ID must be a valid UUID/GUID that is 36 characters long, including hyphens.The subscription ID isn't a GUID
Already added as "<name>". Provisioning it again would deprovision that account.Another account already has this AWS Account ID or Azure Subscription ID. Each can be added only once; open the existing account instead
Use the region's short name, such as westus2 or eastus, not its display name., Invalid Default Region '<region>'. Use the region's short name, such as westus2.Default Region on an Azure Provision page is a display name such as West US 2
Select Import, Export or both.Both checkboxes on a ServiceNow or Guardicore Provision page are clear
Enter a valid email addressThe Email on Invite User isn't an address

Password, secret and token fields are never shown back to you, so they're empty each time the Provision page opens. Leave one blank to keep its saved value. Password is required only appears while the account has no saved credentials yet. Once something has been saved, the field's hint reads Not shown after saving. Leave blank to keep it.

Messages shown at the top of the page:

MessageWhat it meansWhat to do
Error savingThe account couldn't be saved, and no reason was returnedCheck the form for a validation message, then try again
There was an error deleting the accountThe account couldn't be deletedReload the page and try again
Error deleting <name>: <detail>A delete failed. <detail> is the reasonAct on the reason given
Error updating decommission candidate.A decision on a candidate wasn't savedReload the page and try again
Decommission candidate updated, but some details failed to refresh. Reload the page to see the latest status.The decision was saved. Only the display failed to updateReload the page. Nothing was lost
Failed to save <n> nested group changesSome nested Group changes weren't saved. The rest of the Group wasReopen the Group and check its nested Groups
Error(s) encountered while applying changes: <n>Some pending membership changes couldn't be appliedReload the page and apply the ones still listed
Error loading more members., Error loading more matches., Error loading more changes.The next page of a table didn't load. What's already shown is still accurateScroll again, or reload the page
Could not read the selected file as a boundaries JSON export.The file isn't a Boundaries exportUse a file produced by Export on the Boundaries page
Please select one or more pre-defined filters or enter your own search term before saving.A saved search can't be emptyAdd a filter or a search term
Choose a project for each role before saving.A role was assigned without a projectChoose a project for each role
Failed to save search. Please try again., Failed to delete saved search. Please try again., Failed to set default saved search. Please try again.A change to your saved searches wasn't storedTry again
There was an error loading settings: <detail>The Boundaries settings page couldn't loadReload the page
There was an error saving settings: <detail>, There was an error resetting settings: <detail>The Boundaries settings couldn't be saved or resetAct on the reason given
Error updating decommission candidates.A bulk decision on candidates wasn't savedReload the page and try again
Decommission candidates updated, but the list failed to refresh. Reload the page to see the latest status.The decisions were saved. Only the list failed to updateReload the page. Nothing was lost
There was a problem updating this account, please retry the instructions above or contact support.The Provision page couldn't saveCheck the form for a message, then save again
Configuration not saved. with The configuration is incomplete, so nothing was saved. Fill in every required field and try again.The Provision page sent a configuration with a required value missing or blank. Connect stored nothing, and the fields keep what you typedFill in every required field, then save again
Configuration not saved. with The save went through, but the configuration was not stored. Check that every required field has a value and try again. If it keeps happening, contact support.Connect accepted the save but stored no configuration, so the account is still unprovisionedCheck every required field and save again. If it keeps happening, contact FireMon Support
There was a problem verifying access to this account, please retry the instructions above or contact support., Unable to verify access to this account. Please review the instructions and try again. If you're still experiencing issues, please contact support.Verify Account Access on an AWS account failedConfirm the stack finished, then verify again. See AWS
Missing account provisioning info. Contact FireMon support.Connect couldn't build the provisioning template for this AWS accountContact FireMon Support
Account not found or unavailable.The Provision page was opened for an account that no longer exists, or one outside your projectsReturn to Integrations
CSPM Lite clients cannot create new accounts with the 'events only' policy code.Events Only isn't available to your organizationChoose another access level
There are already <n> accounts, which matches your current limit of <n> accounts., Cannot add another account, max reached: <n>. Please contact your sales representative for more information.Your organization is at its account limitDelete an account, or contact your sales representative
Could not read the saved credentials for this account. Enter them again.A save left a secret blank and the stored one couldn't be readEnter the secret and save again
<Role> on <project> is already assigned.The role row duplicates one the user already hasRemove the duplicate row
Error removing role: <detail>, Error deleting userA change on the Users page wasn't savedAct on the reason, or reload and try again
Unable to create user. A user with that username already exists., An account already exists with the username: <username>The username is takenChoose another username

When importing a CSV on the Integrations page, each row that can't be used lists its reasons:

MessageWhat it meansWhat to do
No IDThe row has no identifierChoose the right Unique ID Column, or fill the value in on the row
No IPsThe row has no addressesChoose the right IP Column. Several addresses in one cell can be separated by spaces, semicolons or pipes
No RegionThe row has no regionSet a fixed Location / Region, or choose a column that has a value on every row
<n> of the rows below could not be uploaded.Rows passed the checks above but were rejected on upload. Each one shows its reason under DetailsCorrect those rows and import the file again. Rows that uploaded aren't affected

Still stuck​

Note the exact message, the job or account it came from, and roughly when it happened, then contact FireMon Support. Connector logs are forwarded to FireMon Support, so they can usually see the full error without you collecting files. See Security & Data Protection.