Install Squid
This guide covers production deployment of Squid. If you're just evaluating, start with Give it a Spin.
Install from ServiceNow Store
Install Squid from the ServiceNow Store on your target instance(s).
Get a License Key
Contact sales@arc46.io with the instance names you need licensed. License keys are bound to specific instances.
License keys are typically provided within 24 hours, including for development instances.
Without a license key:
- Non-production instances work with a 50-entity limit
- PDIs (Personal Developer Instances) work without limitations, but installing Store apps on PDIs is only available to ServiceNow employees
Enable ACL Override
Set the system property x_a46gh_squidx.allowAclOverride to true.
When ACLs deny access, ServiceNow silently omits records — no error, no warning, just missing data. Your export appears complete but isn't. This is dangerous for mission-critical integrations.
See ServiceNow ACLs and Squid for the full explanation.
arc46 cannot provide support unless this property is set to true.
Set Up Service Accounts
Create a dedicated service account for each integration system. Dedicated accounts enable isolated troubleshooting and clear audit trails.
Assign these roles:
| Role | Purpose |
|---|---|
x_a46gh_squidx.rest | Required for any API access |
x_a46gh_squidx.defaultAccess | Grants access to all predefined configurations |
defaultAccess is set on all predefined configurations. Accounts without this role cannot access any predefined configuration — which is exactly what you want for service accounts that should only reach specific custom configurations.
For fine-grained access control — restricting accounts to specific configurations, controlling which relations are available, or multi-team setups — see Authorization.
See Security Best Practices for naming conventions and credential management.
Configure Your HTTP Client
Configure your HTTP client to not persist session cookies.
ServiceNow serializes all requests within a session. With cookies enabled:
- Parallel requests execute one at a time
- Long-running queries block everything
- Excess requests return HTTP 202 and are silently dropped
This is the most common cause of Squid performance issues and silent data loss.
See API Client Configuration for code examples in Python, JavaScript, .NET, Java, and PowerShell.
Configure Timeouts
Squid queries can take 10-15 minutes for large datasets. Configure your HTTP client accordingly:
| Timeout | Recommended |
|---|---|
| Connection | 30 seconds |
| Read | 900+ seconds (15 minutes) |
Your ServiceNow administrator must also configure transaction quota rules — the default 300-second limit will kill longer Squid queries before they complete. See ServiceNow Configuration.
Verify Your Setup
Make a test request:
https://YOUR-INSTANCE.service-now.com/api/x_a46gh_squidx/v1/data/cmdb_ci_server_minimal?limit=10
You should receive a JSON response with your server CIs and resolved references.
See API Call for the full request reference.
Next Steps
- API Call — Request format, parameters, filtering, relations
- Configurations — 200+ predefined configurations
- Security — Authentication, authorization, data access controls
- API Throughput — Understanding ServiceNow's performance constraints