Every API here is available over the APIs.io API and to AI agents over MCP.
{
"openapi": "3.0.1",
"info": {
"title": "MFG Integration Management API",
"description": "Provides APIs for managing ECI MFG Integration Engine Configurations.\n\n***IMPORTANT!*** This API is undergoing breaking changes. Please contact the team with any questions.\n\nThis API enforces a rate limit of 500 requests per minute from the same Source IP. Other more specific rate limits may also apply.\n\n## Authentication\nThere are two authentication mechanisms for this API.\n\n### OpenID Connect\nFor Administrators, Product Managers, and Company Managers,\nthe ID token obtained from an OpenID Connect/OAuth 2.0 auth code or implicit flow w/PKCE.\n\n```Authorization: Bearer [id_token]```\n\nThe OpenID Connect discovery document is [located here](https://cognito-idp.us-east-1.amazonaws.com/us-east-1_9IYBf4TpD/.well-known/openid-configuration).\n\n### API Keys\nIf you have been provided an API key, it can be used with HTTP Basic authentication, or via the \nauthorization header as follows:\n\n```\nAuthorization: Basic Zm9vOmJhcg==\nAuthorization: ApiKey ClientId:ClientSecret\n```\n",
"contact": {
"name": "ECI Manufacturing Integration Team",
"url": "https://www.ecisolutions.com/support/"
},
"version": "2.22.273+b02c1dfd00"
},
"servers": [
{
"url": "https://api-user.integrations.ecimanufacturing.com:443",
"description": "Production"
}
],
"paths": {
"/api/activation-codes": {
"get": {
"tags": [
"ActivationCode"
],
"summary": "Get the list of Activation-Codes.",
"description": "Accessible By: Global Admin.\\\r\nAccessed From: User Mgmt UI.\\\r\nDescription: Get the list of Activation-Codes matching the specified filter criteria.",
"operationId": "ListActivationCode",
"parameters": [
{
"name": "integration_id",
"in": "query",
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "product_id",
"in": "query",
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "is_active",
"in": "query",
"schema": {
"type": "boolean"
}
},
{
"name": "is_used",
"in": "query",
"schema": {
"type": "boolean"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ActivationCodeResponseModelIListAPIResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ActivationCodeResponseModelIListAPIResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ActivationCodeResponseModelIListAPIResponse"
}
}
}
}
}
},
"post": {
"tags": [
"ActivationCode"
],
"summary": "Register the Activation code.",
"description": "Accessible By: Global Admin and Product Admin.\\\r\nAccessed From: User Mgmt UI.\\\r\nDescription: Register the Activation code by Global Admin only.",
"operationId": "AddActivationCode",
"requestBody": {
"description": "This is an object which contains all optional fields to add the Activation codes.",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/ActivationCodeRequestModel"
}
]
}
},
"text/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/ActivationCodeRequestModel"
}
]
}
},
"application/*+json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/ActivationCodeRequestModel"
}
]
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ActivationCodeResponseModelAPIResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ActivationCodeResponseModelAPIResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ActivationCodeResponseModelAPIResponse"
}
}
}
}
}
}
},
"/api/activation-codes/generate": {
"post": {
"tags": [
"ActivationCode"
],
"summary": "Generate the Bulk Activation code.",
"description": "Accessible By: Global Admin and Product Admin.\\\r\nAccessed From: User Mgmt UI.\\\r\nDescription: Generate the bulk activation code by Global Admin only.",
"operationId": "GenerateActivationCode",
"requestBody": {
"description": "This is an object which contains all fields to add the Activation codes.",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/GenerateActivationCodeRequestModel"
}
]
}
},
"text/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/GenerateActivationCodeRequestModel"
}
]
}
},
"application/*+json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/GenerateActivationCodeRequestModel"
}
]
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ActivationCodeResponseModelAPIResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ActivationCodeResponseModelAPIResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ActivationCodeResponseModelAPIResponse"
}
}
}
}
}
}
},
"/api/analytics": {
"get": {
"tags": [
"Analytics"
],
"summary": "Gets analytics data for the applications and products, including total API calls, active keys, and trends over time. \r\nThis endpoint is intended for use by product administrators and support users to monitor usage and identify potential issues or opportunities for optimization.",
"description": "The response includes summary KPIs, daily API call counts for trend analysis, aggregated requests by application, and a product breakdown with usage metrics.\r\nThe data is sourced from logging views that aggregate information over a configurable period (defaulting to 90 days).\r\nThis allows stakeholders to understand overall usage patterns, identify high-usage applications or products, and make informed decisions about capacity planning, support prioritization, and potential optimizations. \r\nAccess to this endpoint is restricted to users that satisfy the \"CanViewAnalytics\" policy for the requested resource scope.",
"operationId": "GetAnalyticsData",
"parameters": [
{
"name": "periodDays",
"in": "query",
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "companyId",
"in": "query",
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "integrationId",
"in": "query",
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "systemId",
"in": "query",
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "productName",
"in": "query",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/AnalyticsResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/AnalyticsResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/AnalyticsResponse"
}
}
}
}
}
}
},
"/api/api-users": {
"post": {
"tags": [
"ApiUser"
],
"summary": "Register the API Users by Global Admin, Product Admin, Company Manager.",
"description": "Accessible By: Global Admin, Product Admin, Product Support User, Company Manager.\\\r\nAccessed From: User Mgmt UI, Payment Integration.\\\r\nDescription: This API registers all API Users by Global Admin, Product Admin and Product Support User.\r\nUsing Company Manager, it registers only the ERP, NET1, Avalara and JobBOSS2 public API Users except the financial API Users.",
"operationId": "RegisterApiUser",
"requestBody": {
"description": "This is an object which contains all required and optional fields to register the API Users",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/ErpApiUser"
}
]
}
},
"text/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/ErpApiUser"
}
]
}
},
"application/*+json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/ErpApiUser"
}
]
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/GetApiUserResponseModelAPIResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/GetApiUserResponseModelAPIResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/GetApiUserResponseModelAPIResponse"
}
}
}
}
}
}
},
"/api/api-users/{clientId}/external-connection": {
"patch": {
"tags": [
"ApiUser"
],
"summary": "Update Connection Properties",
"description": "Updates the master key values for the connection associated with the given API Credential\r\nClient ID and applies those settings to the API credential.\r\n<br>\r\nThis method can only be invoked by the original creator of the connection.\r\n",
"operationId": "UpdateConnectionProperties",
"parameters": [
{
"name": "clientId",
"in": "path",
"description": "The API Credential Client ID",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/UpdateConnectionModel"
}
]
}
},
"text/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/UpdateConnectionModel"
}
]
}
},
"application/*+json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/UpdateConnectionModel"
}
]
}
}
}
},
"responses": {
"204": {
"description": "No Content"
}
}
}
},
"/api/api-users/{userId}": {
"get": {
"tags": [
"ApiUser"
],
"summary": "This API is used to get the details of the API User and their associated properties.",
"description": "Accessible By: Global Admin, Product Admin, Product Support User, Company Manager.\\\r\nAccessed From: User Mgmt UI.\\\r\nDescription: Global Admin can get the details of all the API Users.\r\nProduct Admin can get only those API Users' details, whom they can access.",
"operationId": "GetApiUserDetailsById",
"parameters": [
{
"name": "userId",
"in": "path",
"description": "UserId of API User and is required in Guid",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/GetApiUserResponseModelAPIResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/GetApiUserResponseModelAPIResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/GetApiUserResponseModelAPIResponse"
}
}
}
}
}
},
"put": {
"tags": [
"ApiUser"
],
"summary": "Update first or last name of the API User and its property settings.",
"description": "Accessible By: Global Admin, Product Admin, Product Support User, Company Manager.\\\r\nAccessed From: User Mgmt UI.\\\r\nDescription: This API is used to update the first or last name of API Users in database and cognito too. \r\nAnd Erpsetting values of API Users in database.",
"operationId": "UpdateApiUser",
"parameters": [
{
"name": "userId",
"in": "path",
"description": "The API User id",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"requestBody": {
"description": "This is an object which contains some required and optional field",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/UpdateApiUserRequestModel"
}
]
}
},
"text/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/UpdateApiUserRequestModel"
}
]
}
},
"application/*+json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/UpdateApiUserRequestModel"
}
]
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/GetApiUserResponseModelAPIResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/GetApiUserResponseModelAPIResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/GetApiUserResponseModelAPIResponse"
}
}
}
}
}
},
"patch": {
"tags": [
"ApiUser"
],
"summary": "To change the status of API User by Global Admin, Product Admin and Company Manager.",
"description": "Accessible By: Global Admin, Product Admin, Product Support User, Company Manager.\\\r\nAccessed From: User Mgmt UI.\\\r\nDescription: This API is used to change the status from active to inactive and vice-versa of any API User by Global Admin, Product Admin and Company Manager.",
"operationId": "UserStatusApiUser",
"parameters": [
{
"name": "userId",
"in": "path",
"description": "User ID of API User and this field is required in GUID format",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"requestBody": {
"description": "The only property isActive with a value of true to activate the account or false to deactivate the account.",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/ToggleEntityModel"
}
]
}
},
"text/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/ToggleEntityModel"
}
]
}
},
"application/*+json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/ToggleEntityModel"
}
]
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/StringAPIResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/StringAPIResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/StringAPIResponse"
}
}
}
}
}
},
"delete": {
"tags": [
"ApiUser"
],
"summary": "This API is used to delete the API Users.",
"description": "Accessible By: Global Admin, Product Admin, Product Support User, Company Manager.\\\r\nAccessed From: User Mgmt UI.\\\r\nDescription: It Hard delete the API Users details from database and cognito.",
"operationId": "DeleteApiUser",
"parameters": [
{
"name": "userId",
"in": "path",
"description": "The userId of API Users which we want to delete and it is required in GUID format.",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/StringAPIResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/StringAPIResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/StringAPIResponse"
}
}
}
}
}
}
},
"/api/api-users/{userId}/activity": {
"post": {
"tags": [
"ApiUser"
],
"summary": "Updates the last activity date/time for the Company and API Credential and returns the API Credential's details.",
"description": "Accessible By: Global Admin, Product Admin, Product Support User, Financial Admin, Company Manager.\\\r\nAccessed From: User Mgmt UI, Payment Integration, Financial Integration, ERP Integration, Avatax Integration.\\\r\nDescription: This method is typically used by integrations to obtain API Credential integration details.",
"operationId": "UpdateApiUserLastActivity",
"parameters": [
{
"name": "userId",
"in": "path",
"description": "",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ApiUserResponseModelAPIResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiUserResponseModelAPIResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ApiUserResponseModelAPIResponse"
}
}
}
}
}
}
},
"/api/api-users/{userId}/confirm": {
"post": {
"tags": [
"ApiUser"
],
"summary": "Confirm pending API User manually, if API User has not received verification mail.",
"description": "Accessible By: Global Admin, Product Admin, Product Support User, Company Manager.\\\r\nAccessed From: User Mgmt UI.\\\r\nDescription: Confirm pending API User manually, if API User has not received verification mail.",
"operationId": "ConfirmApiUser",
"parameters": [
{
"name": "userId",
"in": "path",
"description": "User ID of API User and this filed is required in GUID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/GetApiUserResponseModelAPIResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/GetApiUserResponseModelAPIResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/GetApiUserResponseModelAPIResponse"
}
}
}
}
}
}
},
"/api/api-users/{userId}/resend_link": {
"post": {
"tags": [
"ApiUser"
],
"summary": "This API is used to resend verification link for the API User who has Enablepasswordreset set to \"TRUE\".",
"description": "Accessible By: Global Admin, Product Admin, Product Support User, Company Manager.\\\r\nAccessed From: User Mgmt UI, Payment Integration.\\\r\nDescription: Used to resend verification link for the API User who has Enablepasswordreset set to \"TRUE\".",
"operationId": "ResendLinkApiUser",
"parameters": [
{
"name": "userId",
"in": "path",
"description": "The unique Guid user Id of the API User",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "userName",
"in": "query",
"description": "The unique username of the API User (optional)",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/StringAPIResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/StringAPIResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/StringAPIResponse"
}
}
}
}
}
}
},
"/api/api-users/login": {
"post": {
"tags": [
"ApiUser"
],
"summary": "This API authenticates the user credentials.",
"description": "Accessible By: Everyone can use this API because it's Anonymous.\\\r\nAccessed From: User Mgmt UI, Payment Integration.\\\r\nDescription: This API authenticates the user credentials. After successful authentication, it returns AWS cognito tokens.",
"operationId": "LoginApiUser",
"requestBody": {
"description": "This is an object which contains username and password and both are required.",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/AuthenticateAPIUser"
}
]
}
},
"text/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/AuthenticateAPIUser"
}
]
}
},
"application/*+json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/AuthenticateAPIUser"
}
]
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/AuthenticateUserResponseAPIResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuthenticateUserResponseAPIResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/AuthenticateUserResponseAPIResponse"
}
}
}
}
}
}
},
"/api/api-users/test-connection": {
"post": {
"tags": [
"ApiUser"
],
"summary": "Check connectivity with the integration's system using the provided settings.",
"description": "Accessible By: Global Admin, Product Admin, Product Support User, Company Manager.\\\r\nAccessed From: User Mgmt UI.\\\r\nDescription: Check connectivity with the integration's system using the provided settings.",
"operationId": "TestConnectionApiUser",
"parameters": [
{
"name": "system_Id",
"in": "query",
"description": "",
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/TestConnectionRequestModel"
}
]
}
},
"text/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/TestConnectionRequestModel"
}
]
}
},
"application/*+json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/TestConnectionRequestModel"
}
]
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/TestConnectionResponseModelAPIResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/TestConnectionResponseModelAPIResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/TestConnectionResponseModelAPIResponse"
}
}
}
}
}
}
},
"/api/ApiUser": {
"post": {
"tags": [
"ApiUser"
],
"summary": "Register the API Users by Global Admin, Product Admin, Company Manager.",
"description": "Accessible By: Global Admin, Product Admin, Product Support User, Company Manager.\\\r\nAccessed From: User Mgmt UI, Payment Integration.\\\r\nDescription: This API registers all API Users by Global Admin, Product Admin and Product Support User.\r\nUsing Company Manager, it registers only the ERP, NET1, Avalara and JobBOSS2 public API Users except the financial API Users.",
"operationId": "RegisterApiUser",
"requestBody": {
"description": "This is an object which contains all required and optional fields to register the API Users",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/ErpApiUser"
}
]
}
},
"text/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/ErpApiUser"
}
]
}
},
"application/*+json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/ErpApiUser"
}
]
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/GetApiUserResponseModelAPIResponse"
}
},
"application/json": {
"schema": {
# --- truncated at 32 KB (496 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/eci-solutions/refs/heads/main/openapi/eci-solutions-management-openapi.json