Every ediFabric .NET call needs a serial key from your plan. Copy it from Your Account after you sign up for Community or buy a plan. The same serial covers ediFabric .NET, Native, and Cloud.
In the examples, paste it into TrialSerialKey in Config.cs. For X12 that file is NET Framework 4.8/EdiFabric.Examples.X12.Common/Config.cs. The .NET 6 projects link it, so one edit covers both solutions.
This article is for all EdiFabric versions >= 11.0.0. For older versions use EdiFabric.SerialKey.Set("Valid serial key"), or var token = EdiFabric.SerialKey.GetToken("Valid serial key"); // Save the token to cache ... // Retrieve the token from cache EdiFabric.SerialKey.SetToken("Valid token") instead.
Which call to use
Call one of these before you parse, generate, validate, or acknowledge. The examples call License.SetSerial(Config.TrialSerialKey). On Developer, call License.EnsureToken instead.
| Plan | What works | Call this |
|---|---|---|
| Community |
License.SetSerial only. Online check. 250 operations per day. Non-production. Never expires. |
License.SetSerial |
| Developer |
License.SetSerial and License.EnsureToken. EnsureToken caches the result for 1 day. |
License.EnsureToken |
| Enterprise |
License.SetSerial, License.GetToken, and License.SetToken. Offline tokens last 30 days by default, or 90 or 180 days on request. |
License.SetToken |
// Community: authorize against the license server
License.SetSerial(serial);
// Developer (recommended): 1-day built-in cache; refreshes if the token expires within N seconds
License.EnsureToken(serial, seconds: 3600);
// Enterprise: set an offline token
License.SetToken(token);One operation is one parse, generate, validate, or acknowledge call. The Community quota of 250 a day is shared across ediFabric .NET, Native, and Cloud. Past that, calls throw
LicenseExceptionwith error 639.Use of the product is subject to the EULA. Upgrading is a serial-key swap. On Developer or Enterprise, switch to the call in the table.
During an Enterprise trial, use License.EnsureToken. Offline tokens are issued after purchase.
Developer: let EnsureToken cache the check
License.EnsureToken contacts the license server, then keeps the result in the process for one day. Pass seconds to refresh early, before the cached token expires. A later network blip or a long batch keeps running on that cache.
License.GetToken is not available on Developer. Calling it throws LicenseException with error 628. Use EnsureToken.
Developer and Enterprise allow up to 10,000 token requests per day across .NET and Native. If you exceed the rate, wait 60 seconds (error 636). A seat is one environment: Community leases 1, Developer leases 3, Enterprise is unlimited.
Enterprise: run without internet
Air-gapped hosts use an offline token. Retrieve it on a machine that can reach the license server, store it, and apply it with License.SetToken where the EDI runs. After the token is set, translation does not contact EdiFabric. The EDI file is never part of a license call.
- On a schedule, from a host that has internet, call
License.GetToken(serial). Run it daily, or at least before the token lifetime (30 days by default). - Store the token in a file, database, or Redis that the offline hosts can read.
- Each EDI process loads a current token and calls
License.SetToken(token).
// Host with internet
var token = License.GetToken(serial);
// Save token to your cache
// Offline host
var token = cache.Get();
License.SetToken(token);TokenFileCache.Set() in EdiFabric.Examples.X12.Common is a file-cache sample of that GetToken / SetToken pair. TokenFileCache.cs. Refresh before the token expires so a missed job does not stop processing. If GetToken fails repeatedly, contact support or support@edifabric.com.
What leaves your network
-
Community.
License.SetSerialchecks the license server when you translate. -
Developer.
License.EnsureTokenchecks when the one-day cache is missing or inside the refresh window you set. -
Enterprise.
License.GetTokenchecks when you mint a token.License.SetTokenapplies a token you already have and does not call out.
Parse, generate, validate, and acknowledge run in your process. See the privacy policy.
When a license call fails
Failures throw LicenseException. ErrorCode is the number, and Message is the text.
Error 635 means no serial or token was set. Paste the serial into TrialSerialKey and call License.SetSerial or License.EnsureToken. Error 639 means the Community daily quota was exceeded. Upgrade at edifabric.com/pricing to continue.
| Code | Message |
|---|---|
| 620 | The token is invalid. Contact support@edifabric.com for assistance |
| 628 | The serial number is missing or incorrect. GetToken doesn't work with developer license. Contact support@edifabric.com for assistance |
| 629 | License was not installed. Contact support@edifabric.com for assistance |
| 630 | No license to use this version. Contact support@edifabric.com for assistance |
| 631 | The token has expired. Get and set a new token to continue. Contact support@edifabric.com for assistance |
| 632 | The token is missing. Set token to continue. Contact support@edifabric.com for assistance |
| 633 | Reached the maximum number of licenses. Set token to continue. Contact support@edifabric.com for assistance |
| 634 | Environment not recognized for licensing or reached the maximum number of licenses. Contact support@edifabric.com for assistance |
| 635 | Serial or token not found. Either set token or serial to continue. Contact support@edifabric.com for assistance |
| 636 | The rate to get serials was exceeded for your license. Wait for 60 seconds and try again or upgrade your license. Contact support@edifabric.com for assistance |
| 638 | The operation is not supported by your license |
| 639 | Your license has reached its daily call limit. Upgrade your plan at edifabric.com to continue using the product. |
Use the same EdiFabric 11 package in every project. Parser and buffer codes are listed in the X12 README.
What to do if there is no access to the Authentication API
Confirm that external calls to the Authentication API are not blocked from your environment. Community (License.SetSerial) and Developer (License.EnsureToken) need that path. Enterprise hosts that already have a token only need License.SetToken, which does not call out.
If you are setting firewall rules, allow the Authentication API:
Primary
- Host: api.edination.com
- IP: 104.211.12.89
- Port: 443
Secondary
- Host: api.edifabric.com
- IP: floating
The Authentication API runs on more than one server, shared between Microsoft Azure and Amazon AWS. EdiFabric calls the Azure endpoint first when it acquires a token. If that endpoint does not respond after the configured timeout and retries, it calls the backup endpoint on AWS.
If both endpoints are down, or no token can be acquired at all, contact support or support@edifabric.com. We will send a temporary token. Install it on your servers as an environment variable or pass it to License.SetToken. EdiFabric then runs offline until connectivity to the Authentication API is restored.
License.SetToken(temporaryToken);We also publish the temporary token on our X. Contacting us there is useful during an outage.
Links
- Licensing in the X12 examples
- Plans
- Your Account
- Install EdiFabric
- Support or support@edifabric.com
Comments
0 comments
Please sign in to leave a comment.