Scope: the developer surface of Xinet (current IgniteTech product). A short section at the end covers the legacy Telescope SOAP API.
Summary. Xinet has no public, documented web API. Vendor material describes an "open REST API" behind the Portal UI S9. The Portal (a PHP application) talks to the production server through a REST API backed by MySQL S11. That server-side data interface is called portalDI (release-note component "portalDI, XinetAPI") and returns JSON S14 S13. Its reference, the Xinet Guide to Development APIs and the Xinet Guide to Xinet Portal Data Interchange, is distributed only through the customer/developer support area S10 S28. The latest API guide is v17.7, available from the reseller portal after login, with "no plans to update" these older references S31 S53. Integrators therefore rely on documented extension points: Trigger Actions (any server-side language), Collection plug-ins (Basket API), Portal templates and tags (PHP), MySQL stored procedures, the MySQL database itself, and command-line tools. Each is described below.
At a glance
/webnative/…) S20 S28. PHP endpoints for Portal (/PORTAL/BROWSE.php, /PORTAL/pilot) S27 S12. Server-side extension points: Trigger Actions, Collection plug-ins, Portal tags, stored procedures, command-line tools S17 S29 S28 S22. No GraphQL, no SOAP, no WebDAV found for Xinet. File access itself is AFP/SMB S8WebNative S20 (HTTP Basic scheme inferred from the realm configuration Unverified). Portal: server-side session; credentials are sent only at first login, unlike a proxy that would pass them on every request S11. Identity sources: Xinet users, Active Directory, Open Directory, LDAP, SAML 2.0 (interactive SSO via a Xinet build of mod_auth_mellon) S11 S19. No API keys, OAuth or tokens documentedAuthentication
- Accounts live in Xinet's user base, or come from AD/Open Directory/LDAP (PAM-based on RHEL 9) S11 S44. Administration runs as
nativeadminor a delegated sub-administrator S8. - WebNative (server) URLs are protected by Apache authentication in the
WebNativerealm. This is configured by theconfigure.apachescript on supported servers S20 S8. - Portal authenticates the user once against the database server, then keeps a session. Portal-to-server traffic can use SSL S11.
- SAML 2.0 SSO: the Xinet server, each Portal site, PORTALADMIN and Pilot are separate service providers (entity IDs). Metadata is exchanged with the IdP (examples for SimpleSAMLphp and Google). SAML replaces local login unless two virtual hosts are set up S19 S43.
- Machine-to-machine access (service accounts, API keys, OAuth clients): Not public. Integrations documented in the help center connect directly to the MySQL database with a dedicated MySQL user created by the administrator S42.
Core resources
Xinet exposes interfaces rather than a resource-oriented REST API. The table maps the usual DAM resources to the documented mechanism. {tenant} = Xinet server, {portal} = Portal server.
| Resource | Endpoints / mechanism | Notes |
|---|---|---|
| Assets (browse, details) | GEThttps://{portal}/PORTAL/BROWSE.php?id={folderFileId}&showid={fileId}&showmode=details|annotations or ?path={urlEncodedPath}&server={serverId}&siteurl={siteId} | Documented for building external links. File IDs ($XFID) and parent IDs ($PARENTID) are substitution variables S27 |
| Asset deep links to desktop | xwnb-view://, xwnbs-view://, com-xinet-cm-open://, com-xinet-cm-reveal-high://, com-xinet-pilot-open-high:// + /PORTAL/BROWSE.php… | Opens Pilot or the contextual-menu extension S27 |
| Asset info (JSON) | portalDI fileinfo JSON array (e.g. HIGHRES section with PAGECOUNT) | Internal Portal↔server interface S14. A missing fileID returns 404 S13 |
| WebNative CGIs | https://{tenant}/webnative/{cgi}, e.g. listdir, browse, preview, imageinfo, searchoptions, searchresults, filemanager, showbasket, downloadbasket, downloadbasketfpo, downloadjpgs, downloadgifs, customorder, batchorder, batchapply, afr, afradmin, passwordcntl, toplevel, mview (video) | Names taken from the localization-tag table and admin guide S28 S20 S25. Parameters: Behind login |
| Metadata (fields schema) | Admin GUI Database > Data Fields. setdatafield Action. export -xml / flat-file export. import of delimited text | Field IDs are numeric (e.g. $KEYWORD137_VALUE) S21 S17 S22 |
| Search | portalDI search (Solr Quick Search, native FullText Advanced Search). MySQL stored procedures sp_RunSearchPostFilter() and sp_NavigatorPostFilter() for custom result filtering | S18 S13 S28 |
| Collections | Basket API for Collection plug-ins (e.g. Custom Image Order, Batch Keyword Apply, contact sheets) | Documented in the Guide to Development APIs (Behind login) S29 |
| Users / groups | Admin GUI, or the directory (AD/LDAP) | No user API documented S8 |
| Uploads | Portal/Pilot upload, mounted volumes (AFP/SMB), hot folders, import | No upload endpoint documented S12 S22 |
| Renditions / derivatives | Custom Image Order and batch order CGIs, FPO/WEB previews, video proxies | S28 S25 |
| Rights | Asset Timer (usage start/end fields), ACLs, Business Rules filters | S89 S23 S88 |
| Workflows | Trigger Sets + Actions (built-in or custom executables); Portal Trigger via setevent | S17 |
| Database | MySQL schema webnative (Venture). Read access for reporting via a dedicated MySQL user | Schema diagrams for Xinet 17 and 2021.5.7 are attached to a help-center article S41 S42 |
| Command line | export, import, dbmgr, solrutil, syncvoltodb, venturelog, kats, ksd, fpod, … (manual pages) | S8 |
Data model
- An asset is a file on a Xinet volume, identified by a numeric file ID in the Venture database. Paths are also accepted in Portal URLs S27 S8.
- Metadata is held in database data fields (text, integer, float, date, boolean) that can be mirrored into the file's XMP packet. IPTC/XMP are read on ingest S21 S8.
- Renditions: web previews, FPOs, high-res originals, video key frames and proxies S8 S25.
- Versions: consistently named backup copies of files S87.
- History: file events (upload, download, preview, replacement, annotation deletion) are logged and can fire triggers S17 S14.
Search & querying
- Query syntax for integrators: Not public. In the UI, Quick Search uses Solr (word tokens, facets). Advanced Search uses the native engine, with operators such as "In the Next" and "Has Each" S18 S36 S32.
- Solr runs in managed-schema mode. Changes such as
maxGramSizemust go through the Solr Schema API, notschema.xmlS91. Since 2026.07.09 the Advanced Filename search uses the livemaxGramSizeinstead of a hard-coded 18 characters S32. - Result filtering per user can be done in PHP templates or, faster, in MySQL stored procedures S28.
- Maximum page size / deep pagination: Not public.
Uploads & binaries
- Upload flows: Portal and Pilot uploads (with overwrite/rename prompt since 19.1), Pilot Upload-Only users, mounted volumes, hot folders S14 S12 S8. Chunked or resumable upload API: Not public.
- Downloads: high-res, FPO and converted downloads through CGIs (
downloadbasket,downloadjpgs,customorder…) S28. Signed or expiring download URLs: Not public.
Events & webhooks
- No outbound webhooks. Use Trigger Sets S17:
- Value Trigger: a data-field value changes (e.g. to "OK").
- Date Trigger: a time relative to a date field (e.g. 90 minutes before a due date) S92.
- File Event Trigger: aggregated upload, new file, delete, download high-res, download FPO, onreplace, preview viewed, upload, image order, move into, image replacement.
- Portal Trigger: fired by portalDI
seteventorventurelog -portaltrig, without a metadata change.
- Actions run in sequence. Exit status 0 means success; any non-zero status triggers the rule's On Failure policy (Continue / Exit / Exit and Notify by email) S17. Custom Actions can be written in any language executable on the server and run as root (SYSTEM on Windows), so they must be secured S17. Configuration lives in
.conf/.buildconfigfiles S17. - A
transferAction exists. A help-center article title mentions an "SFTP trigger" failing with a curl error S47, which suggests curl-based transfers Unverified.
Limits & quirks
- On-premise only: each customer runs its own server and URLs. There is no multi-tenant cloud API S1 S2.
- Documentation gap: the public online help stops at 19.2.1 (2020) S7. Newer behaviour is described only in release-note summaries, PDFs attached to help-center articles S32, and some articles that require login S47.
- The API guides (v17.7) and installers are on a login-protected portal. The Telescope KB still points to
portal.northplains.com, which no longer resolves in DNS S53 S6. - Database access is the de facto integration route for reporting. It needs a dedicated MySQL user; the default root credential is documented publicly in the help center and should be changed S42 Unverified.
- MySQL 8.4 is not certified (8.0 only); a 2026 release pinned MySQL 8.0.45 for RHEL 7→9 conversions S32 S38.
- Licences are tied to a hardware ID (MAC address on VMs). Since 2025.8.5 only Support-generated licences work S15 S35.
SDKs, tools & code samples
| Tool | Type | Status |
|---|---|---|
| Xinet Developer Program (SDK server licence, API manuals, TechNotes) | Vendor programme | Legacy page (© 2007–2013) still online; current availability Unknown S68 |
| Xinet Guide to Development APIs; Guide to Portal Data Interchange | Vendor PDFs | Last v17.7, Behind login S31 S10 |
| Portal tags and templates (variable data tags, HTML tags, base templates) | Documented in the public 19.2.1 Portal Administration Guide | S28 |
| Stored-procedure filtering examples, PHP filtering example | Code samples in the public docs | S28 |
| Adobe InDesign/Illustrator plug-ins (Annotator, Metadata, Support, Picture Wrangler) | Vendor plug-ins | Adobe Exchange / server download S77 |
| Partner front ends and plug-ins (e.g. NAPC BrandControl) | Integrator products | S79 (2009) |
Changelog of the API
| Date | Change |
|---|---|
| 2026-07 | 2026.07.09: search-engine selection fully automatic; obsolete search-engine parameter no longer sent; Solr-down errors surfaced S32 |
| 2025-08 | 2025.8.5: new licence mechanism (Support-generated licences only) S35 |
| ~2018–2019 | 19.2.1: Upload-Only Pilot users replace the Uploader Distributor; Pilot auto-configuration files S12 |
| ~2018 | 19.2: portalDI search max-results parameter; portalDI returns 404 for unknown file IDs S13 |
| ~2018 | 19.1: PAGECOUNT added to the portalDI fileinfo JSON; SAML 2.0 SSO (macOS) S14 |
| n.d. | Xinet Guide to Development APIs v17.7, the last published API documentation S31 |
Legacy: Telescope SOAP API
- Telescope includes a SOAP API, the "Integration Broker", deployed as part of the TSWeb web application S49. The WSDL namespace in the admin manual is
http://com/northplains/web/tsweb/soap/impl. Example methods:PopulatePopupValues(translations for pop-up fields), Download (returns a Download Manager URL), CheckIn/CheckOut S51 S49 S93. - The last significant SOAP API update came with 9.4.0.17 (Dec 2018). The Integration Broker SDK Manual is on the NorthPlains portal (Behind login) S49 S50. A Telescope SDK can be used to write custom download classes S51.
- Other web paths:
/wa/services/uiservice?action=…(UI service deep links) S51.