How-toSage X3Integration / Web services / REST

Sage X3 API Documentation: REST (Syracuse), SOAP Web Services and Where to Find Docs

Question
sage x3 api documentation

Also searched as

  • sage x3 rest api
  • sage x3 soap web services
  • sage x3 sdata endpoint

Short answer

Sage X3 exposes data and business logic in two main ways: REST-style SData services through Syracuse, which read and write business objects as JSON or XML, and SOAP web services that publish X3 subprograms and objects. Official documentation is in Sage's online help and developer resources for your version.

Applies to: Sage X3 V7, V11, V12 and later; endpoint paths and available features depend on version, patch and configuration

Getting started with the X3 APIs

  1. 1Decide the need: reading or writing business objects (REST) or calling a specific X3 function or subprogram (SOAP web service).
  2. 2Create a dedicated integration user in Syracuse with the minimum role needed, and avoid a personal admin login.
  3. 3For REST, discover the available representations for your folder in Syracuse, and request them with an authenticated call.
  4. 4For SOAP, publish the object or subprogram as a web service in administration, assign it to a pool, and test with the generated WSDL.
  5. 5Handle authentication per your setup (basic or token-based, TLS required) and restrict network access to the integration host.
  6. 6Test pagination, filtering and error responses; log request ids so failures can be traced.
  7. 7Version your integration against the X3 release and re-test after patches.

REST through Syracuse (SData)

Syracuse serves REST resources for X3 in a path pattern under the sdata prefix, naming the endpoint, the folder and the representation, for example sales orders, items or business partners. You can read collections with filters and paging, read single records, and, where the representation allows it, create or update with POST and PUT. Responses are JSON or XML.

The Syracuse web client itself uses these services, so anything you can see on screen has a representation behind it. That is a good way to learn: inspect the calls the browser makes while you use a page. For a worked read example, see our page on reading sales orders through the REST API.

SOAP web services

Classic X3 web services publish a subprogram or object to a SOAP endpoint with a WSDL. You publish it in the web services administration, assign a pool of processes to serve calls, and consume it from your integration tool. It suits legacy integrations and cases where you need to run specific X3 business logic.

SOAP calls are tied to pools, so size and monitor them. A saturated pool is a common cause of timeouts that look like network problems.

Where documentation lives

Start with Sage's official online help for your exact version, then Sage's developer resources and knowledge base. Your reseller or implementation partner can provide version-specific guides. Treat blog posts as hints only, because endpoint details change between versions.

Whatever you build, keep the integration read-only until the data model is understood. Write calls should go through the same validations as the screens, so use representations and web services rather than database writes.

Try it here, free

Sage X3 Private AI Layer Blueprint Generator

Open full tool

Generate an architecture plan for adding a private AI assistant to on-prem Sage X3: SQL replica views, Syracuse SData and web services, retrieval, local GPU model, permissions and audit.

Common pitfalls

  • !Using an admin user for the integration.
  • !Writing straight to the database instead of through representations or web services.
  • !Ignoring pool sizing, so SOAP calls time out under load.
  • !Hardcoding endpoint details that change between versions.
  • !No paging on collection reads, causing slow calls on large tables.

How an ERP-grounded AI assistant handles this

An AI assistant needs governed access, not database credentials. A private AI layer such as ERPray can use a read-only integration user against REST representations or SQL views, apply X3 roles, show what it queried, and run on-prem. Write-back, where used, goes through representations with human approval.

Frequently asked questions

Does Sage X3 have a REST API?

Yes. Syracuse exposes REST-style SData services for X3 objects, returning JSON or XML. The set of representations depends on your version and configuration, so check them for your folder.

What is the difference between REST and SOAP in X3?

REST exposes business objects through Syracuse and suits modern integrations. SOAP web services publish X3 subprograms and objects with a WSDL, using pools of processes, and suit older integrations or specific business logic calls.

Where is the official Sage X3 API documentation?

In Sage's online help and developer resources for your version, plus the knowledge base and your reseller's documentation. Always match the documentation to your exact version and patch.

Can I write data through the API?

Yes, where the representation or web service allows it, and it runs through X3 validations. Test thoroughly in a non-production folder first, and use a least-privilege integration user.

Related

How-to

Sage X3 REST API: Reading Sales Orders Through Syracuse

Sage X3 (version 7 and later) exposes data through Syracuse at a URL of the form /api1/x3/erp/ENDPOINT/REPRESENTATION, where the endpoint is the folder and the representation is a published object such as SORDER. A GET with credentials returns JSON, and you filter with a where clause and page with count and a link to the next page. Your integration user needs the right Syracuse and X3 rights for that representation.

Error fix

Sage X3 Syracuse Service Won't Start: Troubleshooting Guide

When Sage X3 users reach no login page, check the Syracuse Windows service and its dependencies in order: the MongoDB service that holds Syracuse configuration, the port and certificate Syracuse binds to, then the connection from Syracuse to the X3 runtime. Syracuse log files normally state which step failed, so read the log before restarting things repeatedly.

How-to

Sage X3 Table Dictionary: How to Browse Tables and What PAYMENTD Holds

Sage X3 keeps its table definitions in a data dictionary you browse from the development area of the application. Tables are named in short uppercase codes, live in the folder's schema (often a schema named like the folder, such as SEED), and columns carry a numeric suffix like _0. PAYMENTD holds the line-level detail of payment entries, paired with a header table.

How-to

Sage X3 Production Planning, Scheduling and Tracking

Sage X3 plans production from master data (items, BOMs, routings, work centers) through MRP or manual work orders, schedules operations against work center capacity, then records progress with production tracking. Setup quality in the BOM, routing and work center calendar decides whether the plan is believable.

Error fix

Division by 0 Error in Sage X3: Find the Cause and Fix It

A division by 0 error in Sage X3 means a calculation divided by a field that was zero or empty at runtime. Typical sources are a zero unit-of-measure coefficient, a zero quantity or base quantity on a BOM or routing, a zero price or rate, or custom 4GL or report code that never guards the denominator. Find the script and line from the error, then fix the data or guard the calculation.

How-to

Sage X3 Developer Studio: What It Does and How to Track Versions and Release Notes

Sage X3 Developer Studio is the development environment for building and changing X3 solution code and web pages, working with the Adonix 4GL scripts and the Syracuse web layer. To track versions, read the release notes and compatibility guides that Sage publishes for each version and patch rather than relying on remembered dates.

AI for ERP

AI for Sage X3, Grounded in Your Own Ledgers and Stock Data

Add AI to Sage X3 finance and stock data without exporting it to a public model. On-prem and private-cloud LLMs for Sage X3 in the UK and France.

Stuck on Sage X3?

Talk to engineers who work inside Sage X3 every week, and who build private AI that answers these questions from your own ERP data.

Keep exploring

Free tools

ERP fixes and how-tos

AI on your ERP

Integrations

Software