License validation
Use of ediFabric Native library requires a valid license. A license is validated during all operations (parse, build, split, and merge). The following two models are available for license validation:
Token (recommended — offline, high throughput)
install_license(serial) // one-time per license server, requires internet
get_token(serial) → token // one-time, requires internet; store the token
set_token(token) // per process start; validated cryptographically
Tokens expire — query get_token_expiration and refresh with get_token as needed.
Serial (online — validates against the license server per operation)
This licensing model is available for all plans, and is the only model available for the Developer and Free plans. It requires authentication before any of the operations are executed. Only one authentication is needed per executing process.
The machine/environment that uses serial authentication must be registered first by calling install_license.
install_license(serial) // one-time per machine, requires internet
set_serial(serial) // per process start
Although serial mode can be used with the Developer and Enterprise plans, it will be tied to the maximum number of allowed license servers per plan.
Use token mode for containers, air-gapped, or high-volume scenarios; serial mode is simplest for low-volume, always-online use.
License API Reference
| Entry point | Signature | Purpose |
|---|---|---|
install_license |
int install_license(byte* serial, int len) |
Register this machine (once, online). |
get_token |
int get_token(byte* serial, int len, byte* out, int cap, int* outLen) |
Fetch a signed token (grow-and-retry). |
set_token |
int set_token(byte* token, int len) |
Cache a token for this process. |
validate_token |
int validate_token(byte* token, int len) |
Validate a token without caching. |
get_token_expiration |
int get_token_expiration(long* expUtc) |
Token expiry (UTC ticks; 0 = none). |
set_serial |
int set_serial(byte* serial, int len) |
Cache a serial for runtime auth. |
get_app_version |
int get_app_version(int* version) |
Library application version. |
License Types
Free
Obtained via the free serial key shown on the website.
- You may not distribute the library or any downloaded templates.
- Any application or product developed may only be used for personal, non-commercial, or evaluation purposes.
- Subject to usage limits and the term specified on the website / serial key.
Developer
Intended for individual developers and small projects.
- Allows use on up to two development machines/environments.
- Permits commercial distribution of Your Product (including SaaS use).
- Authentication requires internet connectivity and is tied to the registered machine(s). The license can be transferred to a different machine upon written request to EdiFabric.
Enterprise
Intended for companies and development teams.
- Allows unlimited internal seats and large-scale internal use.
- Full commercial distribution rights, including SaaS deployments.
- Authentication requires dedicated EdiFabric license server(s) with periodic connectivity to the EdiNation Authentication API. The license server obtains tokens that can be distributed internally. Tokens have a 30-day lifetime. The license is tied to the license server machine and can be transferred upon request. The license allows up to two machines/environments to be used as license servers.
Enterprise Add-ons
For large organizations with high-volume usage or specific requirements.
- Perpetual license. The perpetual option allows you to continue using the last version of the library obtained during the active subscription, even after the subscription expires (updates and priority support require an active plan).
- Priority support.
- Longer token lifetime (Up to one year).
EdiNation Authentication API
When calling install_license, get_token, or set_serial for authentication, the call is redirected to EdiNation Authentication API over HTTPS. To be able to access the authentication API you must ensure the following:
- Internet access during the time of authentication
- If setting firewall rules, the details of the Authentication API are:
Primary
Host: api.edination.com
IP: 104.211.12.89
Port: 443
Secondary
Host: api.edifabric.com
IP: N/A (floating)
We have prepared multiple servers for the authentication API shared between Microsoft Azure and Amazon AWS, so the servers going down altogether is highly unlikely. However, in the event that the Authentication API is down across the primary and the backup instances or no token can be acquired at all, you need to contact us here or at support@edifabric.com
Comments
0 comments
Please sign in to leave a comment.