Lead Commerce API API Reference

Welcome to the Lead Commerce API.

In the left navigation under "Operations", you will find instructions for every API endpoint that Lead Commerce offers to developers. Go to the section entitled Authentication to get started.

Below "Schema Definitions", you will find a detailed list of all parameters and return types.

API Endpoints
Production Server:
http://app.leadcommerce.com:8080/graphiql

Authentication

Below are the instructions for requesting an API token and making a request using that token. Tokens are granted per user.

Requesting an API Token

Creates a new API Token object.

The input object containing api key fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createAPIKey($input: CreateAPIKeyInput!){
  createAPIKey(input: $input){
  }
}
Variables
{
  "input": {
    "userId": "number"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createAPIKey": {}
  }
}

Making a Request

You can either use graphiql directly to make API requests, or use protocols such as cURL to make remote requests. An example cURL call to fetch SKUs is below:

curl -X POST https://app.leadcommerce.com/graphql
-H "Content-Type: application/json"
-H "authorization: Bearer <insert your token here (remove the brackets)>"
-d '{"query": "{skus{id}}"}'

Accounts

The queries for managing your Account.

Fetch Account

Fetches your account details.

id:
integer

The numerical ID of the account.

Example

Request Content-Types: application/json
Query
query account($id: Int!){
  account(id: $id){
    id
    name
    domain
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "account": {
      "id": "integer",
      "name": "string",
      "domain": "string"
    }
  }
}

Addresses

The queries and mutations for managing your Addresses.

Fetch Addresses

Fetches a list of addresses based on filter criteria.

Example

Request Content-Types: application/json
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "addresses": [
      {
        "id": "integer",
        "accountId": "integer",
        "name": "string",
        "fullAddress": "string",
        "address1": "string",
        "address2": "string",
        "address3": "string",
        "postalCode": "string",
        "city": "string",
        "district": "string",
        "country": "string"
      }
    ]
  }
}

Fetch Address

Fetches a address by id.

id:
integer

The numerical ID of the address.

Example

Request Content-Types: application/json
Query
query address($id: Int!){
  address(id: $id){
    id
    accountId
    name
    fullAddress
    address1
    address2
    address3
    postalCode
    city
    district
    country
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "address": {
      "id": "integer",
      "accountId": "integer",
      "name": "string",
      "fullAddress": "string",
      "address1": "string",
      "address2": "string",
      "address3": "string",
      "postalCode": "string",
      "city": "string",
      "district": "string",
      "country": "string"
    }
  }
}

Create Address

Creates a new address.

The input object containing address fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createAddress($input: CreateAddressInput!){
  createAddress(input: $input){
  }
}
Variables
{
  "input": {
    "name": "string",
    "address1": "string",
    "address2": "string",
    "address3": "string",
    "postalCode": "string",
    "city": "string",
    "district": "string",
    "country": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createAddress": {}
  }
}

Update Address

Updates a address record.

The input object containing address fields for updating. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation updateAddress($input: UpdateAddressInput!){
  updateAddress(input: $input){
  }
}
Variables
{
  "input": {
    "id": "number",
    "name": "string",
    "address1": "string",
    "address2": "string",
    "address3": "string",
    "postalCode": "string",
    "city": "string",
    "district": "string",
    "country": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateAddress": {}
  }
}

Delete Address

Delete a address record.

id:
integer

The numerical ID of the address.

Example

Request Content-Types: application/json
Query
mutation deleteAddress($id: Int!){
  deleteAddress(id: $id){
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "deleteAddress": {}
  }
}

Automations and Workflows

The queries and mutations for managing your Automations and Workflows.

Fetch Workflows

Fetches a list of workflows based on filter criteria.

The input object containing variables to order your workflow query. Click here for more information.

The input object containing variables to filter your workflow query. Click here for more information.

limit:
integer

The number of records you wish to fetch.

offset:
integer

The number of records to skip over in your request.

Example

Request Content-Types: application/json
Query
query workflows($orderBy: OrderByWorkflowInput, $filter: FilterWorkflowInput, $limit: Int, $offset: Int){
  workflows(orderBy: $orderBy, filter: $filter, limit: $limit, offset: $offset){
    id
    displayId
    accountId
    name
    createdAt
    updatedAt
  }
}
Variables
{
  "orderBy": {
    "column": "string",
    "order": "string"
  },
  "filter": {
    "ids": [
      "number"
    ],
    "excludeIds": [
      "number"
    ],
    "createdAfter": "string",
    "createdBefore": "string",
    "searchText": "string"
  },
  "limit": "integer",
  "offset": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "workflows": [
      {
        "id": "integer",
        "displayId": "string",
        "accountId": "integer",
        "name": "string",
        "createdAt": "string",
        "updatedAt": "string"
      }
    ]
  }
}

Fetch Automations

Fetches a list of automations based on filter criteria.

Example

Request Content-Types: application/json
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "automations": [
      {
        "id": "integer",
        "displayId": "string",
        "accountId": "integer",
        "workflowId": "integer",
        "createdAt": "string",
        "updatedAt": "string",
        "lastRun": "string"
      }
    ]
  }
}

Fetch Workflow

Fetches a workflow by id.

id:
integer

The numerical ID of the workflow.

Example

Request Content-Types: application/json
Query
query workflow($id: Int!){
  workflow(id: $id){
    id
    displayId
    accountId
    name
    createdAt
    updatedAt
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "workflow": {
      "id": "integer",
      "displayId": "string",
      "accountId": "integer",
      "name": "string",
      "createdAt": "string",
      "updatedAt": "string"
    }
  }
}

Fetch Automation

Fetches an automation by id.

id:
integer

The numerical ID of the automation.

Example

Request Content-Types: application/json
Query
query automation($id: Int!){
  automation(id: $id){
    id
    displayId
    accountId
    workflowId
    createdAt
    updatedAt
    lastRun
    interval
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "automation": {
      "id": "integer",
      "displayId": "string",
      "accountId": "integer",
      "workflowId": "integer",
      "createdAt": "string",
      "updatedAt": "string",
      "lastRun": "string"
    }
  }
}

Create Workflow

Creates a new workflow.

The input object containing workflow fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createWorkflow($input: CreateWorkflowInput!){
  createWorkflow(input: $input){
  }
}
Variables
{
  "input": {
    "name": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createWorkflow": {}
  }
}

Create Workflow Criterion

Creates a new workflow criterion.

The input object containing workflow criterion fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createWorkflowCriterion($input: CreateWorkflowCriterionInput!){
  createWorkflowCriterion(input: $input){
  }
}
Variables
{
  "input": {
    "workflowId": "number",
    "triggerCondition": "string",
    "testTable": "string",
    "testSubTable": "string",
    "testColumn": "string",
    "testValue": "string",
    "matchCriteria": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createWorkflowCriterion": {}
  }
}

Create Workflow Action

Creates a new workflow action.

The input object containing workflow criterion fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createWorkflowAction($input: CreateWorkflowActionInput!){
  createWorkflowAction(input: $input){
  }
}
Variables
{
  "input": {
    "workflowId": "number",
    "type": "string",
    "labelId": "number",
    "emailSettings": {
      "templateId": "number",
      "subject": "string",
      "replyTo": "string"
    }
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createWorkflowAction": {}
  }
}

Create Automation

Creates a new automation.

The input object containing automation fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createAutomation($input: CreateAutomationInput!){
  createAutomation(input: $input){
  }
}
Variables
{
  "input": {
    "workflowId": "number",
    "interval": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createAutomation": {}
  }
}

Update Workflow

Updates a workflow record.

The input object containing workflow fields for updating. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation updateWorkflow($input: UpdateWorkflowInput!){
  updateWorkflow(input: $input){
  }
}
Variables
{
  "input": {
    "id": "number",
    "name": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateWorkflow": {}
  }
}

Update Workflow Criterion

Update a workflow criterion record.

The input object containing workflow criterion fields for updating. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation updateWorkflowCriterion($input: UpdateWorkflowCriterionInput!){
  updateWorkflowCriterion(input: $input){
  }
}
Variables
{
  "input": {
    "id": "number",
    "workflowId": "number",
    "triggerCondition": "string",
    "testTable": "string",
    "testSubTable": "string",
    "testColumn": "string",
    "testValue": "string",
    "matchCriteria": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateWorkflowCriterion": {}
  }
}

Update Workflow Action

Updates a workflow action record.

The input object containing workflow action fields for updating. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation updateWorkflowAction($input: UpdateWorkflowActionInput!){
  updateWorkflowAction(input: $input){
  }
}
Variables
{
  "input": {
    "id": "number",
    "workflowId": "number",
    "type": "string",
    "labelId": "number",
    "emailSettings": {
      "templateId": "number",
      "subject": "string",
      "replyTo": "string"
    }
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateWorkflowAction": {}
  }
}

Update Automation

Updates an automation record.

The input object containing automation fields for updating. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation updateAutomation($input: UpdateAutomationInput!){
  updateAutomation(input: $input){
  }
}
Variables
{
  "input": {
    "id": "number",
    "workflowId": "number",
    "interval": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateAutomation": {}
  }
}

Delete Workflow

Deletes a workflow record.

id:
integer

The numerical ID of the workflow.

Example

Request Content-Types: application/json
Query
mutation deleteWorkflow($id: Int!){
  deleteWorkflow(id: $id){
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "deleteWorkflow": {}
  }
}

Delete Workflow Criterion

Deletes a workflow criterion record.

id:
integer

The numerical ID of the workflow criterion.

Example

Request Content-Types: application/json
Query
mutation deleteWorkflowCriterion($id: Int!){
  deleteWorkflowCriterion(id: $id){
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "deleteWorkflowCriterion": {}
  }
}

Delete Workflow Action

Deletes a workflow action record.

id:
integer

The numerical ID of the workflow action.

Example

Request Content-Types: application/json
Query
mutation deleteWorkflowAction($id: Int!){
  deleteWorkflowAction(id: $id){
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "deleteWorkflowAction": {}
  }
}

Delete Automation

Deletes an automation record.

id:
integer

The numerical ID of the automation.

Example

Request Content-Types: application/json
Query
mutation deleteAutomation($id: Int!){
  deleteAutomation(id: $id){
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "deleteAutomation": {}
  }
}

Run Automation

Runs an automation.

id:
integer

The numerical ID of the automation.

Example

Request Content-Types: application/json
Query
mutation runAutomation($id: Int!){
  runAutomation(id: $id){
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "runAutomation": {}
  }
}

Bin Locations

The queries and mutations for managing your Bin Locations within your warehouses.

Fetch Bin Locations

Fetches a list of bin locations based on filter criteria.

The input object containing variables to order your bin query. Click here for more information.

The input object containing variables to filter your bin query. Click here for more information.

limit:
integer

The number of records you wish to fetch.

offset:
integer

The number of records to skip over in your request.

Example

Request Content-Types: application/json
Query
query binLocations($orderBy: OrderByBinLocationInput, $filter: FilterBinLocationInput, $limit: Int, $offset: Int){
  binLocations(orderBy: $orderBy, filter: $filter, limit: $limit, offset: $offset){
    id
    accountId
    warehouseId
    name
    createdAt
    updatedAt
  }
}
Variables
{
  "orderBy": {
    "column": "string",
    "order": "string"
  },
  "filter": {
    "ids": [
      "number"
    ],
    "excludeIds": [
      "number"
    ],
    "searchText": "string",
    "labelIds": [
      "number"
    ],
    "warehouseIds": [
      "number"
    ],
    "createdAfter": "string",
    "createdBefore": "string"
  },
  "limit": "integer",
  "offset": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "binLocations": [
      {
        "id": "integer",
        "accountId": "integer",
        "warehouseId": "integer",
        "name": "string",
        "createdAt": "string",
        "updatedAt": "string"
      }
    ]
  }
}

Fetch Bin Location

Fetches a bin location by id.

id:
integer

The numerical ID of the bin location.

Example

Request Content-Types: application/json
Query
query binLocation($id: Int!){
  binLocation(id: $id){
    id
    accountId
    warehouseId
    name
    createdAt
    updatedAt
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "binLocation": {
      "id": "integer",
      "accountId": "integer",
      "warehouseId": "integer",
      "name": "string",
      "createdAt": "string",
      "updatedAt": "string"
    }
  }
}

Create Bin Location

Creates a new bin location.

The input object containing bin location fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createBinLocation($input: CreateBinLocationInput!){
  createBinLocation(input: $input){
  }
}
Variables
{
  "input": {
    "name": "string",
    "warehouseId": "number",
    "labelIds": [
      {
        "id": "number",
        "remove": "boolean"
      }
    ],
    "customFields": [
      {
        "id": "number",
        "value": "string",
        "remove": "boolean"
      }
    ]
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createBinLocation": {}
  }
}

Update Bin Location

Updates a bin location record.

The input object containing label fields for updating. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation updateBinLocation($input: UpdateBinLocationInput!){
  updateBinLocation(input: $input){
  }
}
Variables
{
  "input": {
    "id": "number",
    "name": "string",
    "labelIds": [
      {
        "id": "number",
        "remove": "boolean"
      }
    ],
    "customFields": [
      {
        "id": "number",
        "value": "string",
        "remove": "boolean"
      }
    ]
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateBinLocation": {}
  }
}

Delete Bin Location

Delete a bin location record.

id:
integer

The numerical ID of the bin location.

Example

Request Content-Types: application/json
Query
mutation deleteBinLocation($id: Int!){
  deleteBinLocation(id: $id){
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "deleteBinLocation": {}
  }
}

Bulk Updates

The queries and mutations for managing your Bulk Updates.

Create Bulk Update

Creates a new bulk update job.

The input object containing bulk update fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createBulkUpdate($input: CreateBulkUpdateInput!){
  createBulkUpdate(input: $input){
  }
}
Variables
{
  "input": {
    "type": "string",
    "filter": "string",
    "updatePayload": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createBulkUpdate": {}
  }
}

Create Bulk Sales Order Action

Creates a bulk update job using sales order actions.

The input object containing bulk sales order action fields for creation. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createBulkSalesOrderAction($input: CreateBulkSalesOrderActionInput!){
  createBulkSalesOrderAction(input: $input)
}
Variables
{
  "input": {
    "type": "string",
    "orders": [
      {
        "id": "number",
        "payment": {
          "id": "number",
          "altId": "string",
          "checkNumber": "string",
          "amount": "number",
          "paymentDate": "object",
          "notes": "string",
          "source": "string",
          "billingAddressId": "number",
          "invoices": [
            {
              "id": "number",
              "remove": "boolean"
            }
          ],
          "remove": "boolean"
        },
        "shipmentId": "number",
        "packageId": "number"
      }
    ]
  }
}
Try it now
200 OK

Successful operation

type
boolean
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createBulkSalesOrderAction": "boolean"
  }
}

Create Bulk SKU Action

Creates a bulk update job using sku actions.

The input object containing bulk sku action fields for creation. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createBulkSKUAction($input: CreateBulkSKUActionInput!){
  createBulkSKUAction(input: $input)
}
Variables
{
  "input": {
    "type": "string",
    "skus": [
      {
        "id": "number",
        "vendorId": "number",
        "warehouseId": "number",
        "statusId": "number",
        "cost": "number",
        "quantity": "number"
      }
    ]
  }
}
Try it now
200 OK

Successful operation

type
boolean
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createBulkSKUAction": "boolean"
  }
}

Create Bulk Duplicate

Creates duplicates for the provided filter.

The input object containing bulk duplication fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createBulkDuplicate($input: CreateBulkDuplicateInput!){
  createBulkDuplicate(input: $input){
  }
}
Variables
{
  "input": {
    "type": "string",
    "filter": "string",
    "statusId": "number"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createBulkDuplicate": {}
  }
}

Contacts

The queries and mutations for managing your Contacts.

Fetch Contacts

Fetches a list of contacts based on filter criteria.

The input object containing variables to filter your contact query. Click here for more information.

Example

Request Content-Types: application/json
Query
query contacts($filter: FilterContactInput){
  contacts(filter: $filter){
    id
    accountId
    name
    phone
    email
  }
}
Variables
{
  "filter": {
    "searchText": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "contacts": [
      {
        "id": "integer",
        "accountId": "integer",
        "name": "string",
        "phone": "string",
        "email": "string"
      }
    ]
  }
}

Fetch Contact

Fetches a contact by id.

id:
integer

The numerical ID of the contact.

Example

Request Content-Types: application/json
Query
query contact($id: Int!){
  contact(id: $id){
    id
    accountId
    name
    phone
    email
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "contact": {
      "id": "integer",
      "accountId": "integer",
      "name": "string",
      "phone": "string",
      "email": "string"
    }
  }
}

Create Contact

Creates a new contact.

The input object containing contact fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createContact($input: CreateContactInput!){
  createContact(input: $input){
  }
}
Variables
{
  "input": {
    "name": "string",
    "phone": "string",
    "email": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createContact": {}
  }
}

Update Contact

Updates a contact record.

The input object containing contact fields for updating. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation updateContact($input: UpdateContactInput!){
  updateContact(input: $input){
  }
}
Variables
{
  "input": {
    "id": "number",
    "name": "string",
    "phone": "string",
    "email": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateContact": {}
  }
}

Delete Contact

Delete a contact record.

id:
integer

The numerical ID of the address.

Example

Request Content-Types: application/json
Query
mutation deleteContact($id: Int!){
  deleteContact(id: $id){
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "deleteContact": {}
  }
}

Cost Rules

The queries and mutations for managing your Cost Rules.

Fetch Cost Rules

Fetches a list of cost rules based on filter criteria.

The input object containing variables to order your cost rule query. Click here for more information.

The input object containing variables to filter your cost rule query. Click here for more information.

limit:
integer

The number of records you wish to fetch.

offset:
integer

The number of records to skip over in your request.

Example

Request Content-Types: application/json
Query
query costRules($orderBy: OrderByCostRuleInput, $filter: FilterCostRuleInput, $limit: Int, $offset: Int){
  costRules(orderBy: $orderBy, filter: $filter, limit: $limit, offset: $offset){
    id
    accountId
    vendorId
    vendorPartNumber
    skuId
    skuName
    skuCode
    quantity
    cost
    unit
    createdAt
  }
}
Variables
{
  "orderBy": {
    "column": "string",
    "order": "string"
  },
  "filter": {
    "skuIds": [
      "number"
    ],
    "vendorIds": [
      "number"
    ],
    "quantityGreaterThanOrEqualTo": "number",
    "quantityLessThanOrEqualTo": "number",
    "quantityEquals": "number",
    "createdAfter": "string",
    "createdBefore": "string"
  },
  "limit": "integer",
  "offset": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "costRules": [
      {
        "id": "integer",
        "accountId": "integer",
        "vendorId": "integer",
        "vendorPartNumber": "string",
        "skuId": "integer",
        "skuName": "string",
        "skuCode": "string",
        "quantity": "number",
        "cost": "number",
        "unit": "string",
        "createdAt": "string"
      }
    ]
  }
}

Fetch Cost Rule

Fetches a cost rule by id.

id:
integer

The numerical ID of the cost rule.

Example

Request Content-Types: application/json
Query
query costRule($id: Int!){
  costRule(id: $id){
    id
    accountId
    vendorId
    vendorPartNumber
    skuId
    skuName
    skuCode
    quantity
    cost
    unit
    createdAt
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "costRule": {
      "id": "integer",
      "accountId": "integer",
      "vendorId": "integer",
      "vendorPartNumber": "string",
      "skuId": "integer",
      "skuName": "string",
      "skuCode": "string",
      "quantity": "number",
      "cost": "number",
      "unit": "string",
      "createdAt": "string"
    }
  }
}

Create Cost Rule

Creates a new cost rule.

The input object containing cost rule fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createCostRule($input: CreateCostRuleInput!){
  createCostRule(input: $input){
  }
}
Variables
{
  "input": {
    "skuId": "number",
    "vendorId": "number",
    "unit": "string",
    "vendorPartNumber": "string",
    "quantity": "number",
    "cost": "number"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createCostRule": {}
  }
}

Update Cost Rule

Updates a cost rule.

The input object containing cost rule fields for update. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation updateCostRule($input: UpdateCostRuleInput!){
  updateCostRule(input: $input){
  }
}
Variables
{
  "input": {
    "id": "number",
    "skuId": "number",
    "vendorId": "number",
    "unit": "string",
    "vendorPartNumber": "string",
    "quantity": "number",
    "cost": "number"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateCostRule": {}
  }
}

Delete Cost Rule

Delete a cost rule.

id:
integer

The numerical ID of the cost rule

Example

Request Content-Types: application/json
Query
mutation deleteCostRule($id: Int!){
  deleteCostRule(id: $id){
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "deleteCostRule": {}
  }
}

Custom Fields

The queries and mutations for managing your Custom Fields.

Fetch Custom Fields

Fetches a list of custom fields based on filter criteria.

The input object containing variables to order your custom field query. Click here for more information.

The input object containing variables to filter your custom field query. Click here for more information.

limit:
integer

The number of records you wish to fetch.

offset:
integer

The number of records to skip over in your request.

Example

Request Content-Types: application/json
Query
query customFields($orderBy: OrderByCustomFieldInput, $filter: FilterCustomFieldInput, $limit: Int, $offset: Int){
  customFields(orderBy: $orderBy, filter: $filter, limit: $limit, offset: $offset){
    id
    accountId
    module
    displayName
    name
    value
    sortOrder
    createdAt
    updatedAt
  }
}
Variables
{
  "orderBy": {
    "column": "string",
    "order": "string"
  },
  "filter": {
    "ids": [
      "number"
    ],
    "excludeIds": [
      "number"
    ],
    "createdAfter": "string",
    "createdBefore": "string",
    "searchText": "string",
    "modules": [
      "string"
    ]
  },
  "limit": "integer",
  "offset": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "customFields": [
      {
        "id": "integer",
        "accountId": "integer",
        "module": "string",
        "displayName": "string",
        "name": "string",
        "value": "string",
        "sortOrder": "integer",
        "createdAt": "string",
        "updatedAt": "string"
      }
    ]
  }
}

Fetch Custom Field

Fetches a custom field by id.

id:
integer

The numerical ID of the custom field.

Example

Request Content-Types: application/json
Query
query customField($id: Int!){
  customField(id: $id){
    id
    accountId
    module
    displayName
    name
    value
    sortOrder
    createdAt
    updatedAt
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "customField": {
      "id": "integer",
      "accountId": "integer",
      "module": "string",
      "displayName": "string",
      "name": "string",
      "value": "string",
      "sortOrder": "integer",
      "createdAt": "string",
      "updatedAt": "string"
    }
  }
}

Create Custom Field

Creates a new custom field.

The input object containing custom field fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createCustomField($input: CreateCustomFieldInput!){
  createCustomField(input: $input){
  }
}
Variables
{
  "input": {
    "name": "string",
    "sortOrder": "number",
    "module": [
      "string"
    ]
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createCustomField": {}
  }
}

Update Custom Field

Updates a custom field record.

The input object containing custom field fields for updating. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation updateCustomField($input: UpdateCustomFieldInput!){
  updateCustomField(input: $input){
  }
}
Variables
{
  "input": {
    "id": "number",
    "sortOrder": "number",
    "name": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateCustomField": {}
  }
}

Delete Custom Field

Deletes a custom field record.

id:
integer

The numerical ID of the custom field.

Example

Request Content-Types: application/json
Query
mutation deleteCustomField($id: Int!){
  deleteCustomField(id: $id){
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "deleteCustomField": {}
  }
}

Customers

The queries and mutations for managing your Customers.

Fetch Customers

Fetches a list of customers based on filter criteria.

The input object containing variables to order your customer query. Click here for more information.

The input object containing variables to filter your customer query. Click here for more information.

limit:
integer

The number of records you wish to fetch.

offset:
integer

The number of records to skip over in your request.

Example

Request Content-Types: application/json
Query
query customers($orderBy: OrderByCustomerInput, $filter: FilterCustomerInput, $limit: Int, $offset: Int){
  customers(orderBy: $orderBy, filter: $filter, limit: $limit, offset: $offset){
    id
    displayId
    accountId
    altId
    businessName
    amountDue
    amountPaid
    total
    stripeId
    quickBooksId
    quickBooksSyncToken
    termId
    taxExempt
    taxRate
    notes
    createdAt
    updatedAt
  }
}
Variables
{
  "orderBy": {
    "column": "string",
    "order": "string"
  },
  "filter": {
    "ids": [
      "number"
    ],
    "excludeIds": [
      "number"
    ],
    "searchText": "string",
    "labelIds": [
      "number"
    ],
    "createdAfter": "string",
    "createdBefore": "string"
  },
  "limit": "integer",
  "offset": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "customers": [
      {
        "id": "integer",
        "displayId": "integer",
        "accountId": "integer",
        "altId": "string",
        "businessName": "string",
        "amountDue": "number",
        "amountPaid": "number",
        "total": "number",
        "stripeId": "string",
        "quickBooksId": "integer",
        "quickBooksSyncToken": "string",
        "termId": "integer",
        "taxExempt": "boolean",
        "taxRate": "number",
        "notes": "string",
        "createdAt": "string",
        "updatedAt": "string"
      }
    ]
  }
}

Fetch Customer

Fetches a customer by id.

id:
integer

The numerical ID of the customer.

Example

Request Content-Types: application/json
Query
query customer($id: Int!){
  customer(id: $id){
    id
    displayId
    accountId
    altId
    businessName
    amountDue
    amountPaid
    total
    stripeId
    quickBooksId
    quickBooksSyncToken
    termId
    taxExempt
    taxRate
    notes
    createdAt
    updatedAt
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "customer": {
      "id": "integer",
      "displayId": "integer",
      "accountId": "integer",
      "altId": "string",
      "businessName": "string",
      "amountDue": "number",
      "amountPaid": "number",
      "total": "number",
      "stripeId": "string",
      "quickBooksId": "integer",
      "quickBooksSyncToken": "string",
      "termId": "integer",
      "taxExempt": "boolean",
      "taxRate": "number",
      "notes": "string",
      "createdAt": "string",
      "updatedAt": "string"
    }
  }
}

Create Customer

Creates a new customer.

The input object containing customer fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createCustomer($input: CreateCustomerInput!){
  createCustomer(input: $input){
  }
}
Variables
{
  "input": {
    "altId": "string",
    "businessName": "string",
    "termId": "number",
    "taxExempt": "boolean",
    "taxRate": "number",
    "notes": "string",
    "contactIds": [
      {
        "id": "number",
        "remove": "boolean"
      }
    ],
    "labelIds": [
      {
        "id": "number",
        "remove": "boolean"
      }
    ],
    "customFields": [
      {
        "id": "number",
        "value": "string",
        "remove": "boolean"
      }
    ],
    "addressIds": [
      {
        "id": "number",
        "remove": "boolean"
      }
    ]
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createCustomer": {}
  }
}

Update Customer

Updates a customer record.

The input object containing customer fields for updating. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation updateCustomer($input: UpdateCustomerInput!){
  updateCustomer(input: $input){
  }
}
Variables
{
  "input": {
    "id": "number",
    "altId": "string",
    "businessName": "string",
    "termId": "number",
    "taxExempt": "boolean",
    "taxRate": "number",
    "notes": "string",
    "contactIds": [
      {
        "id": "number",
        "remove": "boolean"
      }
    ],
    "labelIds": [
      {
        "id": "number",
        "remove": "boolean"
      }
    ],
    "customFields": [
      {
        "id": "number",
        "value": "string",
        "remove": "boolean"
      }
    ],
    "addressIds": [
      {
        "id": "number",
        "remove": "boolean"
      }
    ]
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateCustomer": {}
  }
}

Delete Customer

Delete a customer record.

id:
integer

The numerical ID of the customer.

Example

Request Content-Types: application/json
Query
mutation deleteCustomer($id: Int!){
  deleteCustomer(id: $id){
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "deleteCustomer": {}
  }
}

Dashboard KPIs

The queries for Dashboard Data.

Total AR

The query for selecting the balance due to invoices in a specified date range.

(no description)

Example

Request Content-Types: application/json
Query
query totalAR($filter: DashboardFilter!){
  totalAR(filter: $filter){
    value
    date
  }
}
Variables
{
  "filter": {
    "startDate": "string",
    "endDate": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "totalAR": {
      "value": "number"
    }
  }
}

Total AP

The query for selecting the balance due to purchase order receipts in a specified date range.

(no description)

Example

Request Content-Types: application/json
Query
query totalAP($filter: DashboardFilter!){
  totalAP(filter: $filter){
    value
    date
  }
}
Variables
{
  "filter": {
    "startDate": "string",
    "endDate": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "totalAP": {
      "value": "number"
    }
  }
}

Total SKUs

The query for selecting the number of SKUs created in a specified date range.

(no description)

Example

Request Content-Types: application/json
Query
query totalSKUs($filter: DashboardFilter!){
  totalSKUs(filter: $filter){
    value
    date
  }
}
Variables
{
  "filter": {
    "startDate": "string",
    "endDate": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "totalSKUs": {
      "value": "number"
    }
  }
}

Total Sales

The query for selecting the value of sales orders placed in a specified date range.

(no description)

Example

Request Content-Types: application/json
Query
query totalSales($filter: DashboardFilter!){
  totalSales(filter: $filter){
    value
    date
  }
}
Variables
{
  "filter": {
    "startDate": "string",
    "endDate": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "totalSales": {
      "value": "number"
    }
  }
}

Total Revenue Per User

The query for selecting the value of sales orders per existing user placed in a specified date range.

(no description)

Example

Request Content-Types: application/json
Query
query totalRevenuePerUser($filter: DashboardFilter!){
  totalRevenuePerUser(filter: $filter){
    value
    date
  }
}
Variables
{
  "filter": {
    "startDate": "string",
    "endDate": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "totalRevenuePerUser": {
      "value": "number"
    }
  }
}

Total Revenue Per Customer

The query for selecting the value of sales orders per existing customer placed in a specified date range.

(no description)

Example

Request Content-Types: application/json
Query
query totalRevenuePerCustomer($filter: DashboardFilter!){
  totalRevenuePerCustomer(filter: $filter){
    value
    date
  }
}
Variables
{
  "filter": {
    "startDate": "string",
    "endDate": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "totalRevenuePerCustomer": {
      "value": "number"
    }
  }
}

Total Orders

The query for selecting the number of sales orders placed in a specified date range.

(no description)

Example

Request Content-Types: application/json
Query
query totalOrders($filter: DashboardFilter!){
  totalOrders(filter: $filter){
    value
    date
  }
}
Variables
{
  "filter": {
    "startDate": "string",
    "endDate": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "totalOrders": {
      "value": "number"
    }
  }
}

Total Orders By Date

The query for selecting the number of sales orders placed in a specified date range, grouped by date.

(no description)

Example

Request Content-Types: application/json
Query
query totalOrdersByDate($filter: DashboardFilter!){
  totalOrdersByDate(filter: $filter)
}
Variables
{
  "filter": {
    "startDate": "string",
    "endDate": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "totalOrdersByDate": [
      {
        "value": "number"
      }
    ]
  }
}

Total Shipments

The query for selecting the number of shipments created in a specified date range.

(no description)

Example

Request Content-Types: application/json
Query
query totalShipments($filter: DashboardFilter!){
  totalShipments(filter: $filter){
    value
    date
  }
}
Variables
{
  "filter": {
    "startDate": "string",
    "endDate": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "totalShipments": {
      "value": "number"
    }
  }
}

Payment Types

The query for selecting the value of sales order payments within a specified date range, grouped by their payment source.

(no description)

Example

Request Content-Types: application/json
Query
query paymentTypes($filter: DashboardFilter!){
  paymentTypes(filter: $filter){
    totalAmount
    payments
  }
}
Variables
{
  "filter": {
    "startDate": "string",
    "endDate": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "paymentTypes": {
      "totalAmount": "number"
    }
  }
}

Emails

The mutation for sending Emails.

Send Email

Sends an email.

The input object containing email fields for sending. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation sendEmail($input: CreateEmailInput!){
  sendEmail(input: $input){
  }
}
Variables
{
  "input": {
    "subject": "string",
    "body": "string",
    "replyTo": "string",
    "to": "string",
    "cc": "string",
    "bcc": "string",
    "templateIds": [
      "number"
    ],
    "tagParams": [
      {
        "tag": "string",
        "variables": "string"
      }
    ],
    "recordId": "number"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "sendEmail": {}
  }
}

Send Batch Emails

Sends a batch of emails.

The input object containing email fields for sending. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation sendBatchEmails($input: CreateBatchEmailInput!){
  sendBatchEmails(input: $input)
}
Variables
{
  "input": {
    "subject": "string",
    "body": "string",
    "replyTo": "string",
    "to": "string",
    "cc": "string",
    "bcc": "string",
    "templateIds": [
      "number"
    ],
    "jobs": [
      {
        "tagParams": [
          {
            "tag": "string",
            "variables": "string"
          }
        ],
        "recordId": "number",
        "templateIds": [
          "number"
        ]
      }
    ]
  }
}
Try it now
200 OK

Successful operation

type
boolean
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "sendBatchEmails": "boolean"
  }
}

Exports

Fetch Exports

Fetches a list of exports based on filter criteria.

Example

Request Content-Types: application/json
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "exports": [
      {
        "id": "integer",
        "signedUrl": "string",
        "createdAt": "string",
        "updatedAt": "string"
      }
    ]
  }
}

Fetch Export

Fetches an export by id.

id:
integer

The numerical ID of the export.

Example

Request Content-Types: application/json
Query
query export($id: Int!){
  export(id: $id){
    id
    type
    signedUrl
    createdAt
    updatedAt
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "export": {
      "id": "integer",
      "signedUrl": "string",
      "createdAt": "string",
      "updatedAt": "string"
    }
  }
}

Create Export

Creates a new export.

The input object containing export fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createExport($input: CreateExportInput!){
  createExport(input: $input){
  }
}
Variables
{
  "input": {
    "type": "string",
    "filter": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createExport": {}
  }
}

File Upload

The queries for managing your Files.

Fetch Files

Fetches your files.

Example

Request Content-Types: application/json
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "files": [
      {
        "id": "integer",
        "name": "string",
        "type": "string",
        "size": "integer",
        "path": "string",
        "signedUrl": "string"
      }
    ]
  }
}

Upload Files

Uploads a new file.

files:
object[]

(no description)

Example

Request Content-Types: application/json
Query
mutation uploadFiles($files: [FileUpload]!){
  uploadFiles(files: $files)
}
Variables
{
  "files": [
    null
  ]
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "uploadFiles": [
      {
        "id": "integer",
        "name": "string",
        "type": "string",
        "size": "integer",
        "path": "string",
        "signedUrl": "string"
      }
    ]
  }
}

Delete Files

Deletes a file.

id:
integer

(no description)

Example

Request Content-Types: application/json
Query
mutation removeFile($id: Int!){
  removeFile(id: $id)
}
Variables
{
  "id": "integer"
}
Try it now
200 OK

Successful operation

type
boolean
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "removeFile": "boolean"
  }
}

Filters

Fetch Filters

Fetches a list of filters based on filter criteria.

The input object containing variables to filter your product query. Click here for more information.

Example

Request Content-Types: application/json
Query
query filters($filter: FilterFilterInput!){
  filters(filter: $filter){
    id
    userId
    name
    color
    module
    queryParams
  }
}
Variables
{
  "filter": {
    "module": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "filters": [
      {
        "id": "integer",
        "userId": "integer",
        "name": "string",
        "color": "string",
        "module": "string",
        "queryParams": "string"
      }
    ]
  }
}

Fetch Filter

Fetches a filter by id.

id:
integer

The numerical ID of the filter.

Example

Request Content-Types: application/json
Query
query filter($id: Int!){
  filter(id: $id){
    id
    userId
    name
    color
    module
    queryParams
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "filter": {
      "id": "integer",
      "userId": "integer",
      "name": "string",
      "color": "string",
      "module": "string",
      "queryParams": "string"
    }
  }
}

Create Filter

Creates a new filter.

The input object containing product fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createFilter($input: CreateFilterInput!){
  createFilter(input: $input){
  }
}
Variables
{
  "input": {
    "name": "string",
    "color": "string",
    "module": "string",
    "queryParams": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createFilter": {}
  }
}

Update Filter

Updates a filter record.

The input object containing filter fields for updating. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation updateFilter($input: UpdateFilterInput!){
  updateFilter(input: $input){
  }
}
Variables
{
  "input": {
    "id": "number",
    "name": "string",
    "color": "string",
    "module": "string",
    "queryParams": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateFilter": {}
  }
}

Delete Filter

Deletes a filter record.

id:
integer

The numerical ID of the filter.

Example

Request Content-Types: application/json
Query
mutation deleteFilter($id: Int!){
  deleteFilter(id: $id){
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "deleteFilter": {}
  }
}

History

The queries managing your History Records.

Fetch History

Fetches a list of history records based on filter criteria.

The input object containing variables to filter your history query. Click here for more information.

Example

Request Content-Types: application/json
Query
query history($filter: FilterHistoryInput){
  history(filter: $filter){
    id
    accountId
    userId
    actionId
    tableId
    recordId
    description
    metadata
    createdAt
  }
}
Variables
{
  "filter": {
    "table": [
      "string"
    ],
    "userId": "number",
    "recordId": "number",
    "createdAfter": "string",
    "createdBefore": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "history": [
      {
        "id": "integer",
        "accountId": "integer",
        "userId": "integer",
        "actionId": "string",
        "tableId": "string",
        "recordId": "integer",
        "description": "string",
        "metadata": "string",
        "createdAt": "string"
      }
    ]
  }
}

Imports

The queries and mutations for managing your File Imports.

Fetch Imports

Fetches a list of imports based on filter criteria.

Example

Request Content-Types: application/json
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "imports": [
      {
        "id": "integer",
        "signedUrl": "string",
        "createdAt": "string",
        "updatedAt": "string"
      }
    ]
  }
}

Fetch Import

Fetches an import by id.

id:
integer

The numerical ID of the import.

Example

Request Content-Types: application/json
Query
query import($id: Int!){
  import(id: $id){
    id
    type
    signedUrl
    createdAt
    updatedAt
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "import": {
      "id": "integer",
      "signedUrl": "string",
      "createdAt": "string",
      "updatedAt": "string"
    }
  }
}

Create Import

Creates a new import.

The input object containing import fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createImport($input: CreateImportInput!){
  createImport(input: $input){
  }
}
Variables
{
  "input": {
    "type": "string",
    "file": "object",
    "skipHeader": "boolean",
    "mappings": [
      "string"
    ]
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createImport": {}
  }
}

Inventory

The queries and mutations for managing your SKUs and Lots.

Fetch SKUs

Fetches a list of skus based on filter criteria.

orderBy:

The input object containing variables to order your sku query. Click here for more information.

The input object containing variables to filter your sku query. Click here for more information.

limit:
integer

The number of records you wish to fetch.

offset:
integer

The number of records to skip over in your request.

stockLevelsFilter:

The input object containing variables to filter your sku stock levels subquery. Click here for more information.

lotsFilter:

The input object containing variables to filter your lot levels subquery. Click here for more information.

skuLevelsFilter:

The input object containing variables to filter your skus by sku levels. Click here for more information.

Example

Request Content-Types: application/json
Query
query skus($orderBy: OrderBySKUInput, $filter: FilterSKUInput, $limit: Int, $offset: Int, $stockLevelsFilter: FilterStockLevelsInput, $lotsFilter: FilterLotsInput, $skuLevelsFilter: FilterSKULevelsInput){
  skus(orderBy: $orderBy, filter: $filter, limit: $limit, offset: $offset, stockLevelsFilter: $stockLevelsFilter, lotsFilter: $lotsFilter, skuLevelsFilter: $skuLevelsFilter){
    id
    isKit
    accountId
    productId
    code
    name
    minStockLevel
    maxStockLevel
    createdAt
    updatedAt
    quickBooksId
    quickBooksSyncToken
  }
}
Variables
{
  "orderBy": {
    "column": "string",
    "order": "string"
  },
  "filter": {
    "ids": [
      "number"
    ],
    "excludeIds": [
      "number"
    ],
    "belowMinStockLevel": "boolean",
    "searchText": "string",
    "labelIds": [
      "number"
    ],
    "vendorIds": [
      "number"
    ],
    "createdAfter": "string",
    "createdBefore": "string"
  },
  "limit": "integer",
  "offset": "integer",
  "stockLevelsFilter": {
    "groupBy": "string",
    "idIn": [
      "number"
    ]
  },
  "lotsFilter": {
    "groupBy": "string",
    "idIn": [
      "number"
    ]
  },
  "skuLevelsFilter": {
    "type": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "skus": [
      {
        "id": "integer",
        "isKit": "boolean",
        "accountId": "integer",
        "productId": "integer",
        "code": "string",
        "name": "string",
        "minStockLevel": "number",
        "maxStockLevel": "number",
        "createdAt": "string",
        "updatedAt": "string",
        "quickBooksId": "integer",
        "quickBooksSyncToken": "string"
      }
    ]
  }
}

Fetch SKU

Fetches a sku by id.

id:
integer

The numerical ID of the sku.

stockLevelsFilter:

The input object containing variables to filter your sku stock levels subquery. Click here for more information.

lotsFilter:

The input object containing variables to filter your lot levels subquery. Click here for more information.

Example

Request Content-Types: application/json
Query
query sku($id: Int!, $stockLevelsFilter: FilterStockLevelsInput, $lotsFilter: FilterLotsInput){
  sku(id: $id, stockLevelsFilter: $stockLevelsFilter, lotsFilter: $lotsFilter){
    id
    isKit
    accountId
    productId
    code
    name
    minStockLevel
    maxStockLevel
    createdAt
    updatedAt
    quickBooksId
    quickBooksSyncToken
  }
}
Variables
{
  "id": "integer",
  "stockLevelsFilter": {
    "groupBy": "string",
    "idIn": [
      "number"
    ]
  },
  "lotsFilter": {
    "groupBy": "string",
    "idIn": [
      "number"
    ]
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "sku": {
      "id": "integer",
      "isKit": "boolean",
      "accountId": "integer",
      "productId": "integer",
      "code": "string",
      "name": "string",
      "minStockLevel": "number",
      "maxStockLevel": "number",
      "createdAt": "string",
      "updatedAt": "string",
      "quickBooksId": "integer",
      "quickBooksSyncToken": "string"
    }
  }
}

Create SKU

Creates a new sku.

The input object containing sku fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createSKU($input: CreateSKUInput!){
  createSKU(input: $input){
  }
}
Variables
{
  "input": {
    "isKit": "boolean",
    "productId": "number",
    "code": "string",
    "name": "string",
    "cost": "number",
    "price": "number",
    "vendorId": "number",
    "vendorIds": [
      {
        "id": "number",
        "remove": "boolean"
      }
    ],
    "labelIds": [
      {
        "id": "number",
        "remove": "boolean"
      }
    ],
    "files": [
      {
        "id": "number",
        "name": "string",
        "sortOrder": "number",
        "remove": "boolean"
      }
    ],
    "billOfMaterials": [
      {
        "id": "number",
        "skuId": "number",
        "lotIds": [
          {
            "id": "number",
            "quantity": "number",
            "remove": "boolean"
          }
        ],
        "quantity": "number",
        "isFixed": "boolean",
        "remove": "boolean"
      }
    ],
    "customFields": [
      {
        "id": "number",
        "value": "string",
        "remove": "boolean"
      }
    ],
    "minStockLevel": "number",
    "maxStockLevel": "number"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createSKU": {}
  }
}

Update SKU

Updates a sku record.

The input object containing sku fields for updating. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation updateSKU($input: UpdateSKUInput!){
  updateSKU(input: $input){
  }
}
Variables
{
  "input": {
    "id": "number",
    "isKit": "boolean",
    "code": "string",
    "name": "string",
    "productId": "number",
    "vendorIds": [
      {
        "id": "number",
        "remove": "boolean"
      }
    ],
    "labelIds": [
      {
        "id": "number",
        "remove": "boolean"
      }
    ],
    "files": [
      {
        "id": "number",
        "name": "string",
        "sortOrder": "number",
        "remove": "boolean"
      }
    ],
    "billOfMaterials": [
      {
        "id": "number",
        "skuId": "number",
        "lotIds": [
          {
            "id": "number",
            "quantity": "number",
            "remove": "boolean"
          }
        ],
        "quantity": "number",
        "isFixed": "boolean",
        "remove": "boolean"
      }
    ],
    "customFields": [
      {
        "id": "number",
        "value": "string",
        "remove": "boolean"
      }
    ],
    "minStockLevel": "number",
    "maxStockLevel": "number"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateSKU": {}
  }
}

Delete SKU

Deletes a sku record.

id:
integer

The numerical ID of the sku.

Example

Request Content-Types: application/json
Query
mutation deleteSKU($id: Int!){
  deleteSKU(id: $id){
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "deleteSKU": {}
  }
}

Fetch Inventory Lots

Fetches a list of lots based on filter criteria.

orderBy:

The input object containing variables to order your lot query. Click here for more information.

The input object containing variables to filter your lot query. Click here for more information.

limit:
integer

The number of records you wish to fetch.

offset:
integer

The number of records to skip over in your request.

Example

Request Content-Types: application/json
Query
query lots($orderBy: OrderByLotInput, $filter: FilterLotInput, $limit: Int, $offset: Int){
  lots(orderBy: $orderBy, filter: $filter, limit: $limit, offset: $offset){
    id
    accountId
    skuId
    skuCode
    skuName
    binId
    binName
    name
    description
    quantity
    originalQuantity
    quantityAllocated
    quantityCommitted
    cost
    quantityMapped
    quantityReceived
    lotNumber
    altLotNumber
    serialNumber
    workOrderAssemblyId
    manufactureDate
    expirationDate
    totalValue
    createdAt
    updatedAt
  }
}
Variables
{
  "orderBy": {
    "column": "string",
    "order": "string"
  },
  "filter": {
    "searchText": "string",
    "warehouseIds": [
      "number"
    ],
    "skuId": "number",
    "manufacturedAfter": "object",
    "manufacturedBefore": "object",
    "expiredAfter": "object",
    "expiredBefore": "object",
    "createdAfter": "string",
    "createdBefore": "string"
  },
  "limit": "integer",
  "offset": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "lots": [
      {
        "id": "integer",
        "accountId": "integer",
        "skuId": "integer",
        "skuCode": "string",
        "skuName": "string",
        "binId": "integer",
        "binName": "string",
        "name": "string",
        "description": "string",
        "quantity": "number",
        "originalQuantity": "number",
        "quantityAllocated": "number",
        "quantityCommitted": "number",
        "cost": "number",
        "quantityMapped": "number",
        "quantityReceived": "number",
        "lotNumber": "string",
        "altLotNumber": "string",
        "serialNumber": "string",
        "workOrderAssemblyId": "integer",
        "totalValue": "number",
        "createdAt": "string",
        "updatedAt": "string"
      }
    ]
  }
}

Fetch Inventory Lot

Fetches a lot by id.

id:
integer

The numerical ID of the lot.

Example

Request Content-Types: application/json
Query
query lot($id: Int!){
  lot(id: $id){
    id
    accountId
    skuId
    skuCode
    skuName
    binId
    binName
    name
    description
    quantity
    originalQuantity
    quantityAllocated
    quantityCommitted
    cost
    quantityMapped
    quantityReceived
    lotNumber
    altLotNumber
    serialNumber
    workOrderAssemblyId
    manufactureDate
    expirationDate
    totalValue
    createdAt
    updatedAt
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "lot": {
      "id": "integer",
      "accountId": "integer",
      "skuId": "integer",
      "skuCode": "string",
      "skuName": "string",
      "binId": "integer",
      "binName": "string",
      "name": "string",
      "description": "string",
      "quantity": "number",
      "originalQuantity": "number",
      "quantityAllocated": "number",
      "quantityCommitted": "number",
      "cost": "number",
      "quantityMapped": "number",
      "quantityReceived": "number",
      "lotNumber": "string",
      "altLotNumber": "string",
      "serialNumber": "string",
      "workOrderAssemblyId": "integer",
      "totalValue": "number",
      "createdAt": "string",
      "updatedAt": "string"
    }
  }
}

Fetch Adjustments

Fetches a list of inventory adjustments based on filter criteria.

The input object containing variables to order your adjustment query. Click here for more information.

The input object containing variables to filter your adjustment query. Click here for more information.

Example

Request Content-Types: application/json
Query
query adjustments($orderBy: OrderByAdjustmentInput, $filter: FilterAdjustmentInput){
  adjustments(orderBy: $orderBy, filter: $filter){
    quantity
    description
    lotId
    skuId
    skuName
    skuDescription
    warehouseId
    warehouseName
    createdAt
  }
}
Variables
{
  "orderBy": {
    "column": "string",
    "order": "string"
  },
  "filter": {
    "skuId": "number",
    "skuIds": [
      "number"
    ],
    "warehouseId": "number",
    "warehouseIds": [
      "number"
    ],
    "createdAfter": "string",
    "createdBefore": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "adjustments": [
      {
        "quantity": "number",
        "description": "string",
        "lotId": "integer",
        "skuId": "integer",
        "skuName": "string",
        "skuDescription": "string",
        "warehouseId": "integer",
        "warehouseName": "string",
        "createdAt": "string"
      }
    ]
  }
}

Create Inventory Lot

Creates a new inventory lot.

The input object containing lot fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createLot($input: CreateLotInput!){
  createLot(input: $input){
  }
}
Variables
{
  "input": {
    "skuId": "number",
    "binId": "number",
    "quantity": "number",
    "cost": "number",
    "lotNumber": "string",
    "altLotNumber": "string",
    "serialNumber": "string",
    "manufactureDate": "object",
    "expirationDate": "object"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createLot": {}
  }
}

Update Inventory Lot

Updates a lot record.

The input object containing lot fields for updating. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation updateLot($input: UpdateLotInput!){
  updateLot(input: $input){
  }
}
Variables
{
  "input": {
    "id": "number",
    "binId": "number",
    "lotNumber": "string",
    "cost": "number",
    "altLotNumber": "string",
    "serialNumber": "string",
    "manufactureDate": "object",
    "expirationDate": "object"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateLot": {}
  }
}

Adjust Inventory Lot

Adjusts the quantity on an inventory lot.

The input object containing fields for adjustments. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createAdjustment($input: CreateAdjustmentInput!){
  createAdjustment(input: $input){
  }
}
Variables
{
  "input": {
    "lotId": "number",
    "skuId": "number",
    "binId": "number",
    "quantityAdjustment": "number",
    "reason": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createAdjustment": {}
  }
}

Delete Inventory Lot

Deletes a lot record.

id:
integer

The numerical ID of the lot.

Example

Request Content-Types: application/json
Query
mutation deleteLot($id: Int!){
  deleteLot(id: $id){
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "deleteLot": {}
  }
}

Stock History

Fetches stock history for a given SKU.

skuId:
integer

The numerical ID of the SKU.

The input object containing variables to filter your stock history query. Click here for more information.

Example

Request Content-Types: application/json
Query
query stockHistory($skuId: Int!, $filter: FilterStockHistoryInput){
  stockHistory(skuId: $skuId, filter: $filter){
    id
    skuId
    skuName
    skuCode
    warehouseId
    warehouseName
    lotId
    binId
    binName
    receivementId
    purchaseOrderId
    purchaseOrderDisplayId
    salesOrderId
    salesOrderDisplayId
    workOrderId
    workOrderDisplayId
    transferId
    transferDisplayId
    quantityAdded
    type
    createdAt
    updatedAt
  }
}
Variables
{
  "skuId": "integer",
  "filter": {
    "warehouseIds": [
      "number"
    ],
    "createdAfter": "string",
    "createdBefore": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "stockHistory": [
      {
        "id": "integer",
        "skuId": "integer",
        "skuName": "string",
        "skuCode": "string",
        "warehouseId": "integer",
        "warehouseName": "string",
        "lotId": "integer",
        "binId": "integer",
        "binName": "string",
        "receivementId": "integer",
        "purchaseOrderId": "integer",
        "purchaseOrderDisplayId": "string",
        "salesOrderId": "integer",
        "salesOrderDisplayId": "string",
        "workOrderId": "integer",
        "workOrderDisplayId": "string",
        "transferId": "integer",
        "transferDisplayId": "string",
        "quantityAdded": "number",
        "type": "string"
      }
    ]
  }
}

Labels

The queries and mutations for managing your Labels.

Fetch Labels

Fetches a list of labels based on filter criteria.

The input object containing variables to order your label query. Click here for more information.

The input object containing variables to filter your label query. Click here for more information.

limit:
integer

The number of records you wish to fetch.

offset:
integer

The number of records to skip over in your request.

Example

Request Content-Types: application/json
Query
query labels($orderBy: OrderByLabelInput, $filter: FilterLabelInput, $limit: Int, $offset: Int){
  labels(orderBy: $orderBy, filter: $filter, limit: $limit, offset: $offset){
    id
    accountId
    name
    color
    modules
    createdAt
    updatedAt
  }
}
Variables
{
  "orderBy": {
    "column": "string",
    "order": "string"
  },
  "filter": {
    "ids": [
      "number"
    ],
    "excludeIds": [
      "number"
    ],
    "createdAfter": "string",
    "createdBefore": "string",
    "searchText": "string",
    "modules": [
      "string"
    ]
  },
  "limit": "integer",
  "offset": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "labels": [
      {
        "id": "integer",
        "accountId": "integer",
        "name": "string",
        "color": "string",
        "modules": [
          "string"
        ],
        "createdAt": "string",
        "updatedAt": "string"
      }
    ]
  }
}

Fetch Label

Fetches a label by id.

id:
integer

The numerical ID of the label.

Example

Request Content-Types: application/json
Query
query label($id: Int!){
  label(id: $id){
    id
    accountId
    name
    color
    modules
    createdAt
    updatedAt
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "label": {
      "id": "integer",
      "accountId": "integer",
      "name": "string",
      "color": "string",
      "modules": [
        "string"
      ],
      "createdAt": "string",
      "updatedAt": "string"
    }
  }
}

Create Label

Creates a new label.

The input object containing label fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createLabel($input: CreateLabelInput!){
  createLabel(input: $input){
  }
}
Variables
{
  "input": {
    "name": "string",
    "color": "string",
    "modules": [
      "string"
    ]
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createLabel": {}
  }
}

Update Label

Updates a label record.

The input object containing label fields for updating. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation updateLabel($input: UpdateLabelInput!){
  updateLabel(input: $input){
  }
}
Variables
{
  "input": {
    "id": "number",
    "name": "string",
    "color": "string",
    "modules": [
      "string"
    ]
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateLabel": {}
  }
}

Delete Label

Deletes a label record.

id:
integer

The numerical ID of the label.

Example

Request Content-Types: application/json
Query
mutation deleteLabel($id: Int!){
  deleteLabel(id: $id){
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "deleteLabel": {}
  }
}

Line Items

The queries and mutations for managing your Line Items.

Fetch Line Items

Fetches a list of line items based on filter criteria.

(no description)

Example

Request Content-Types: application/json
Query
query lineItems($filter: FilterLineItemInput){
  lineItems(filter: $filter){
    id
    accountId
    skuId
    quantity
    skuCostId
    skuPriceId
    defaultPrice
    name
    description
  }
}
Variables
{
  "filter": {
    "type": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "lineItems": [
      {
        "id": "integer",
        "accountId": "integer",
        "skuId": "integer",
        "quantity": "number",
        "skuCostId": "integer",
        "skuPriceId": "integer",
        "defaultPrice": "number",
        "name": "string",
        "description": "string"
      }
    ]
  }
}

Fetch Line Item

Fetches a line item by id.

id:
integer

The numerical ID of the line item.

Example

Request Content-Types: application/json
Query
query lineItem($id: Int!){
  lineItem(id: $id){
    id
    accountId
    skuId
    quantity
    skuCostId
    skuPriceId
    defaultPrice
    name
    description
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "lineItem": {
      "id": "integer",
      "accountId": "integer",
      "skuId": "integer",
      "quantity": "number",
      "skuCostId": "integer",
      "skuPriceId": "integer",
      "defaultPrice": "number",
      "name": "string",
      "description": "string"
    }
  }
}

Create Line Item

Creates a new line item.

The input object containing line item fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createLineItem($input: CreateLineItemInput!){
  createLineItem(input: $input){
  }
}
Variables
{
  "input": {
    "skuId": "number",
    "skuCostId": "number",
    "skuPriceId": "number",
    "name": "string",
    "description": "string",
    "defaultPrice": "number"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createLineItem": {}
  }
}

Notifications

The queries and mutations for managing your Notifications.

Fetch Notifications

Fetches a list of notifications based on filter criteria.

The input object containing variables to filter your notification query. Click here for more information.

Example

Request Content-Types: application/json
Query
query notifications($filter: FilterNotificationInput){
  notifications(filter: $filter){
    id
    message
    type
    recordId
    hasBeenSeen
    createdAt
    updatedAt
  }
}
Variables
{
  "filter": {
    "hasBeenSeen": "boolean",
    "createdAfter": "string",
    "createdBefore": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "notifications": [
      {
        "id": "integer",
        "message": "string",
        "recordId": "integer",
        "hasBeenSeen": "boolean",
        "createdAt": "string",
        "updatedAt": "string"
      }
    ]
  }
}

Fetch Notification

Fetches a notification by id.

id:
integer

The numerical ID of the notification.

Example

Request Content-Types: application/json
Query
query notification($id: Int!){
  notification(id: $id){
    id
    message
    type
    recordId
    hasBeenSeen
    createdAt
    updatedAt
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "notification": {
      "id": "integer",
      "message": "string",
      "recordId": "integer",
      "hasBeenSeen": "boolean",
      "createdAt": "string",
      "updatedAt": "string"
    }
  }
}

Create Notification

Creates a new notification.

The input object containing notification fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createNotification($input: CreateNotificationInput!){
  createNotification(input: $input){
  }
}
Variables
{
  "input": {
    "message": "string",
    "userId": "number",
    "type": "string",
    "recordId": "number",
    "hasBeenSeen": "boolean"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createNotification": {}
  }
}

Update Notification

Updates a notification record.

The input object containing notification fields for updating. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation updateNotification($input: UpdateNotificationInput!){
  updateNotification(input: $input){
  }
}
Variables
{
  "input": {
    "id": "number",
    "message": "string",
    "userId": "number",
    "type": "string",
    "recordId": "number",
    "hasBeenSeen": "boolean"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateNotification": {}
  }
}

Delete Notification

Deletes a notification record.

id:
integer

The numerical ID of the notification.

Example

Request Content-Types: application/json
Query
mutation deleteNotification($id: Int!){
  deleteNotification(id: $id){
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "deleteNotification": {}
  }
}

Price Rules

The queries and mutations for managing your Price Rules.

Fetch Price Rules

Fetches a list of price rules based on filter criteria.

The input object containing variables to order your price rule query. Click here for more information.

The input object containing variables to filter your price rule query. Click here for more information.

limit:
integer

The number of records you wish to fetch.

offset:
integer

The number of records to skip over in your request.

Example

Request Content-Types: application/json
Query
query priceRules($orderBy: OrderByPriceRuleInput, $filter: FilterPriceRuleInput, $limit: Int, $offset: Int){
  priceRules(orderBy: $orderBy, filter: $filter, limit: $limit, offset: $offset){
    id
    accountId
    skuId
    skuName
    skuCode
    quantity
    price
    unit
    createdAt
  }
}
Variables
{
  "orderBy": {
    "column": "string",
    "order": "string"
  },
  "filter": {
    "skuIds": [
      "number"
    ],
    "labelIds": [
      "number"
    ],
    "quantityGreaterThanOrEqualTo": "number",
    "quantityLessThanOrEqualTo": "number",
    "quantityEquals": "number",
    "createdAfter": "string",
    "createdBefore": "string"
  },
  "limit": "integer",
  "offset": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "priceRules": [
      {
        "id": "integer",
        "accountId": "integer",
        "skuId": "integer",
        "skuName": "string",
        "skuCode": "string",
        "quantity": "number",
        "price": "number",
        "unit": "string",
        "createdAt": "string"
      }
    ]
  }
}

Fetch Price Rule

Fetches a price rule by id.

id:
integer

The numerical ID of the price rule.

Example

Request Content-Types: application/json
Query
query priceRule($id: Int!){
  priceRule(id: $id){
    id
    accountId
    skuId
    skuName
    skuCode
    quantity
    price
    unit
    createdAt
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "priceRule": {
      "id": "integer",
      "accountId": "integer",
      "skuId": "integer",
      "skuName": "string",
      "skuCode": "string",
      "quantity": "number",
      "price": "number",
      "unit": "string",
      "createdAt": "string"
    }
  }
}

Create Price Rule

Creates a new price rule.

The input object containing price rule fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createPriceRule($input: CreatePriceRuleInput!){
  createPriceRule(input: $input){
  }
}
Variables
{
  "input": {
    "skuId": "number",
    "unit": "string",
    "vendorPartNumber": "string",
    "quantity": "number",
    "price": "number"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createPriceRule": {}
  }
}

Update Price Rule

Updates a price rule.

The input object containing price rule fields for update. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation updatePriceRule($input: UpdatePriceRuleInput!){
  updatePriceRule(input: $input){
  }
}
Variables
{
  "input": {
    "id": "number",
    "skuId": "number",
    "unit": "string",
    "quantity": "number",
    "price": "number"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updatePriceRule": {}
  }
}

Delete Price Rule

Delete a price rule.

id:
integer

The numerical ID of the price rule

Example

Request Content-Types: application/json
Query
mutation deletePriceRule($id: Int!){
  deletePriceRule(id: $id){
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "deletePriceRule": {}
  }
}

Create Price Rule Criterion

Creates a new price rule criterion.

The input object containing price rule criterion fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createPriceRuleCriterion($input: CreatePriceRuleCriterionInput!){
  createPriceRuleCriterion(input: $input){
  }
}
Variables
{
  "input": {
    "skuPriceId": "number",
    "labelId": "number",
    "matchCriteria": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createPriceRuleCriterion": {}
  }
}

Update Price Rule Criterion

Updates a price rule criterion.

The input object containing price rule criterion fields for updating. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation updatePriceRuleCriterion($input: UpdatePriceRuleCriterionInput!){
  updatePriceRuleCriterion(input: $input){
  }
}
Variables
{
  "input": {
    "id": "number",
    "skuPriceId": "number",
    "labelId": "number",
    "matchCriteria": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updatePriceRuleCriterion": {}
  }
}

Delete Price Rule Criterion

Delete a price rule criterion.

id:
integer

The numerical ID of the price rule criterion.

Example

Request Content-Types: application/json
Query
mutation deletePriceRuleCriterion($id: Int!){
  deletePriceRuleCriterion(id: $id){
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "deletePriceRuleCriterion": {}
  }
}

Products

The queries and mutations for managing your Products.

Fetch Products

Fetches a list of products based on filter criteria.

The input object containing variables to order your product query. Click here for more information.

The input object containing variables to filter your product query. Click here for more information.

limit:
integer

The number of records you wish to fetch.

offset:
integer

The number of records to skip over in your request.

Example

Request Content-Types: application/json
Query
query products($orderBy: OrderByProductInput, $filter: FilterProductInput, $limit: Int, $offset: Int){
  products(orderBy: $orderBy, filter: $filter, limit: $limit, offset: $offset){
    id
    accountId
    displayId
    name
    description
    templateId
    storeUrl
    createdAt
    updatedAt
  }
}
Variables
{
  "orderBy": {
    "column": "string",
    "order": "string"
  },
  "filter": {
    "ids": [
      "number"
    ],
    "excludeIds": [
      "number"
    ],
    "searchText": "string",
    "labelIds": [
      "number"
    ],
    "createdAfter": "string",
    "createdBefore": "string"
  },
  "limit": "integer",
  "offset": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "products": [
      {
        "id": "integer",
        "accountId": "integer",
        "displayId": "string",
        "name": "string",
        "description": "string",
        "templateId": "integer",
        "storeUrl": "string",
        "createdAt": "string",
        "updatedAt": "string"
      }
    ]
  }
}

Fetch Product

Fetches a product by id.

id:
integer

The numerical ID of the product.

Example

Request Content-Types: application/json
Query
query product($id: Int!){
  product(id: $id){
    id
    accountId
    displayId
    name
    description
    templateId
    storeUrl
    createdAt
    updatedAt
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "product": {
      "id": "integer",
      "accountId": "integer",
      "displayId": "string",
      "name": "string",
      "description": "string",
      "templateId": "integer",
      "storeUrl": "string",
      "createdAt": "string",
      "updatedAt": "string"
    }
  }
}

Create Product

Creates a new product.

The input object containing product fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createProduct($input: CreateProductInput!){
  createProduct(input: $input){
  }
}
Variables
{
  "input": {
    "name": "string",
    "displayId": "string",
    "labelIds": [
      {
        "id": "number",
        "remove": "boolean"
      }
    ],
    "customFields": [
      {
        "id": "number",
        "value": "string",
        "remove": "boolean"
      }
    ],
    "description": "string",
    "templateId": "number"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createProduct": {}
  }
}

Update Product

Updates a product record.

The input object containing product fields for updating. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation updateProduct($input: UpdateProductInput!){
  updateProduct(input: $input){
  }
}
Variables
{
  "input": {
    "id": "number",
    "name": "string",
    "displayId": "string",
    "labelIds": [
      {
        "id": "number",
        "remove": "boolean"
      }
    ],
    "customFields": [
      {
        "id": "number",
        "value": "string",
        "remove": "boolean"
      }
    ],
    "description": "string",
    "templateId": "number"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateProduct": {}
  }
}

Delete Product

Deletes a product record.

id:
integer

The numerical ID of the product.

Example

Request Content-Types: application/json
Query
mutation deleteProduct($id: Int!){
  deleteProduct(id: $id){
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "deleteProduct": {}
  }
}

Purchase Orders

The queries and mutations for managing your Purchase Orders.

Fetch Receipts

Fetches a list of purchase order receipts based on filter criteria.

The input object containing variables to order your receipt query. Click here for more information.

The input object containing variables to filter your receipt query. Click here for more information.

limit:
integer

The number of records you wish to fetch.

offset:
integer

The number of records to skip over in your request.

Example

Request Content-Types: application/json
Query
query receipts($orderBy: OrderByReceiptInput, $filter: FilterReceiptInput, $limit: Int, $offset: Int){
  receipts(orderBy: $orderBy, filter: $filter, limit: $limit, offset: $offset){
    id
    purchaseOrderId
    altId
    notes
    statusId
    dueDate
    total
    createdAt
  }
}
Variables
{
  "orderBy": {
    "column": "string",
    "order": "string"
  },
  "filter": {
    "searchText": "string",
    "statusId": "number",
    "dueAfter": "object",
    "dueBefore": "object",
    "createdAfter": "string",
    "createdBefore": "string"
  },
  "limit": "integer",
  "offset": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "receipts": [
      {
        "id": "integer",
        "purchaseOrderId": "integer",
        "altId": "string",
        "notes": "string",
        "statusId": "integer",
        "total": "number"
      }
    ]
  }
}

Fetch Receivements

Fetches a list of purchase order receivements based on filter criteria.

The input object containing variables to order your receivement query. Click here for more information.

The input object containing variables to filter your receivement query. Click here for more information.

limit:
integer

The number of records you wish to fetch.

offset:
integer

The number of records to skip over in your request.

Example

Request Content-Types: application/json
Query
query receivements($orderBy: OrderByReceivementInput, $filter: FilterReceivementInput, $limit: Int, $offset: Int){
  receivements(orderBy: $orderBy, filter: $filter, limit: $limit, offset: $offset){
    id
    purchaseOrderId
    purchaseOrderDisplayId
    lineItemId
    skuId
    name
    description
    binId
    binName
    quantity
    altLotNumber
    serialNumber
    expirationDate
    manufactureDate
    lotNumber
    createdAt
  }
}
Variables
{
  "orderBy": {
    "column": "string",
    "order": "string"
  },
  "filter": {
    "searchText": "string",
    "binId": "number",
    "expiredAfter": "object",
    "expiredBefore": "object",
    "createdAfter": "string",
    "createdBefore": "string"
  },
  "limit": "integer",
  "offset": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "receivements": [
      {
        "id": "integer",
        "purchaseOrderId": "integer",
        "purchaseOrderDisplayId": "string",
        "lineItemId": "integer",
        "skuId": "integer",
        "name": "string",
        "description": "string",
        "binId": "integer",
        "binName": "string",
        "quantity": "number",
        "altLotNumber": "string",
        "serialNumber": "string",
        "lotNumber": "string"
      }
    ]
  }
}

Fetch Purchase Orders

Fetches a list of purchase orders based on filter criteria.

The input object containing variables to order your purchase order query. Click here for more information.

The input object containing variables to filter your purchase order query. Click here for more information.

limit:
integer

The number of records you wish to fetch.

offset:
integer

The number of records to skip over in your request.

Example

Request Content-Types: application/json
Query
query purchaseOrders($orderBy: OrderByPurchaseOrderInput, $filter: FilterPurchaseOrderInput, $limit: Int, $offset: Int){
  purchaseOrders(orderBy: $orderBy, filter: $filter, limit: $limit, offset: $offset){
    id
    displayId
    accountId
    altId
    warehouseId
    vendorId
    statusId
    notes
    externalNotes
    issuedDate
    dueDate
    quickBooksId
    quickBooksSyncToken
    total
    createdAt
    updatedAt
  }
}
Variables
{
  "orderBy": {
    "column": "string",
    "order": "string"
  },
  "filter": {
    "ids": [
      "number"
    ],
    "excludeIds": [
      "number"
    ],
    "searchText": "string",
    "labelIds": [
      "number"
    ],
    "skuIds": [
      "number"
    ],
    "warehouseIds": [
      "number"
    ],
    "vendorIds": [
      "number"
    ],
    "statusIds": [
      "number"
    ],
    "createdAfter": "string",
    "createdBefore": "string"
  },
  "limit": "integer",
  "offset": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "purchaseOrders": [
      {
        "id": "integer",
        "displayId": "integer",
        "accountId": "integer",
        "altId": "string",
        "warehouseId": "integer",
        "vendorId": "integer",
        "statusId": "integer",
        "notes": "string",
        "externalNotes": "string",
        "quickBooksId": "integer",
        "quickBooksSyncToken": "string",
        "total": "number",
        "createdAt": "string",
        "updatedAt": "string"
      }
    ]
  }
}

Fetch Purchase Order

Fetches a purchase order by id.

id:
integer

The numerical ID of the purchase order.

Example

Request Content-Types: application/json
Query
query purchaseOrder($id: Int!){
  purchaseOrder(id: $id){
    id
    displayId
    accountId
    altId
    warehouseId
    vendorId
    statusId
    notes
    externalNotes
    issuedDate
    dueDate
    quickBooksId
    quickBooksSyncToken
    total
    createdAt
    updatedAt
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "purchaseOrder": {
      "id": "integer",
      "displayId": "integer",
      "accountId": "integer",
      "altId": "string",
      "warehouseId": "integer",
      "vendorId": "integer",
      "statusId": "integer",
      "notes": "string",
      "externalNotes": "string",
      "quickBooksId": "integer",
      "quickBooksSyncToken": "string",
      "total": "number",
      "createdAt": "string",
      "updatedAt": "string"
    }
  }
}

Create Purchase Order

Creates a new purchase order.

The input object containing purchase order fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createPurchaseOrder($input: CreatePurchaseOrderInput!){
  createPurchaseOrder(input: $input){
  }
}
Variables
{
  "input": {
    "altId": "string",
    "warehouseId": "number",
    "vendorId": "number",
    "statusId": "number",
    "notes": "string",
    "externalNotes": "string",
    "issuedDate": "object",
    "dueDate": "object",
    "labelIds": [
      {
        "id": "number",
        "remove": "boolean"
      }
    ],
    "customFields": [
      {
        "id": "number",
        "value": "string",
        "remove": "boolean"
      }
    ],
    "lineItems": [
      {
        "id": "number",
        "cost": "number",
        "quantity": "number",
        "name": "string",
        "description": "string",
        "remove": "boolean"
      }
    ],
    "receivements": [
      {
        "id": "number",
        "originLotId": "number",
        "lineItemId": "number",
        "binId": "number",
        "quantity": "number",
        "lotNumber": "string",
        "altLotNumber": "string",
        "serialNumber": "string",
        "manufactureDate": "object",
        "expirationDate": "object",
        "remove": "boolean"
      }
    ],
    "receipts": [
      {
        "id": "number",
        "lineItems": [
          {
            "lineItemId": "number",
            "quantity": "number",
            "cost": "number",
            "remove": "boolean"
          }
        ],
        "altId": "string",
        "notes": "string",
        "statusId": "number",
        "dueDate": "object"
      }
    ]
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createPurchaseOrder": {}
  }
}

Update Purchase Order

Updates a purchase order record.

The input object containing label fields for updating. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation updatePurchaseOrder($input: UpdatePurchaseOrderInput!){
  updatePurchaseOrder(input: $input){
  }
}
Variables
{
  "input": {
    "id": "number",
    "altId": "string",
    "warehouseId": "number",
    "vendorId": "number",
    "statusId": "number",
    "notes": "string",
    "externalNotes": "string",
    "issuedDate": "object",
    "dueDate": "object",
    "labelIds": [
      {
        "id": "number",
        "remove": "boolean"
      }
    ],
    "customFields": [
      {
        "id": "number",
        "value": "string",
        "remove": "boolean"
      }
    ],
    "lineItems": [
      {
        "id": "number",
        "cost": "number",
        "quantity": "number",
        "name": "string",
        "description": "string",
        "remove": "boolean"
      }
    ],
    "receivements": [
      {
        "id": "number",
        "originLotId": "number",
        "lineItemId": "number",
        "binId": "number",
        "quantity": "number",
        "lotNumber": "string",
        "altLotNumber": "string",
        "serialNumber": "string",
        "manufactureDate": "object",
        "expirationDate": "object",
        "remove": "boolean"
      }
    ],
    "receipts": [
      {
        "id": "number",
        "lineItems": [
          {
            "lineItemId": "number",
            "quantity": "number",
            "cost": "number",
            "remove": "boolean"
          }
        ],
        "altId": "string",
        "notes": "string",
        "statusId": "number"
      }
    ]
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updatePurchaseOrder": {}
  }
}

Delete Purchase Order

Delete a purchase order record.

id:
integer

The numerical ID of the purchase order.

Example

Request Content-Types: application/json
Query
mutation deletePurchaseOrder($id: Int!){
  deletePurchaseOrder(id: $id){
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "deletePurchaseOrder": {}
  }
}

Duplicate Purchase Order

Duplicates a provided purchase order.

The input object containing purchase order fields for duplication. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation duplicatePurchaseOrder($input: DuplicatePurchaseOrderInput!){
  duplicatePurchaseOrder(input: $input){
  }
}
Variables
{
  "input": {
    "statusId": "number",
    "id": "number"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "duplicatePurchaseOrder": {}
  }
}

Reset

The mutations for executing data resets.

Execute Reset

Executes a data reset based on filter criteria.

type:

(no description)

Example

Request Content-Types: application/json
Query
mutation executeReset($type: ResetType!){
  executeReset(type: $type)
}
Variables
{
  "type": "string"
}
Try it now
200 OK

Successful operation

type
boolean
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "executeReset": "boolean"
  }
}

Sales Orders

Fetch Shipments

Fetches a list of shipments based on filter criteria.

The input object containing variables to order your shipment query. Click here for more information.

The input object containing variables to filter your shipment query. Click here for more information.

limit:
integer

The number of records you wish to fetch.

offset:
integer

The number of records to skip over in your request.

Example

Request Content-Types: application/json
Query
query shipments($orderBy: OrderByShipmentInput, $filter: FilterShipmentInput, $limit: Int, $offset: Int){
  shipments(orderBy: $orderBy, filter: $filter, limit: $limit, offset: $offset){
    id
    salesOrderId
    salesOrderDisplayId
    packages
    createdAt
    updatedAt
  }
}
Variables
{
  "orderBy": {
    "column": "string",
    "order": "string"
  },
  "filter": {
    "searchText": "string",
    "warehouseIds": [
      "number"
    ],
    "customerIds": [
      "number"
    ],
    "ids": [
      "number"
    ],
    "excludeIds": [
      "number"
    ],
    "isShipped": "boolean",
    "salesOrderIDs": [
      "number"
    ],
    "packageIds": [
      "number"
    ],
    "createdAfter": "string",
    "createdBefore": "string"
  },
  "limit": "integer",
  "offset": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "shipments": [
      {
        "id": "integer",
        "salesOrderId": "integer",
        "salesOrderDisplayId": "string",
        "createdAt": "string",
        "updatedAt": "string"
      }
    ]
  }
}

Fetch Payments

Fetches a list of payments based on filter criteria.

The input object containing variables to order your payment query. Click here for more information.

The input object containing variables to filter your payment query. Click here for more information.

limit:
integer

The number of records you wish to fetch.

offset:
integer

The number of records to skip over in your request.

Example

Request Content-Types: application/json
Query
query payments($orderBy: OrderByPaymentInput, $filter: FilterPaymentInput, $limit: Int, $offset: Int){
  payments(orderBy: $orderBy, filter: $filter, limit: $limit, offset: $offset){
    id
    salesOrderId
    salesOrderDisplayId
    altId
    checkNumber
    amount
    paymentDate
    notes
    source
    billingAddressId
    createdAt
    updatedAt
  }
}
Variables
{
  "orderBy": {
    "column": "string",
    "order": "string"
  },
  "filter": {
    "searchText": "string",
    "source": "string",
    "createdAfter": "string",
    "createdBefore": "string"
  },
  "limit": "integer",
  "offset": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "payments": [
      {
        "id": "integer",
        "salesOrderId": "integer",
        "salesOrderDisplayId": "integer",
        "altId": "string",
        "checkNumber": "string",
        "amount": "number",
        "notes": "string",
        "billingAddressId": "integer",
        "createdAt": "string",
        "updatedAt": "string"
      }
    ]
  }
}

Fetch Invoices

Fetches a list of invoices based on filter criteria.

The input object containing variables to order your invoice query. Click here for more information.

The input object containing variables to filter your invoice query. Click here for more information.

limit:
integer

The number of records you wish to fetch.

offset:
integer

The number of records to skip over in your request.

Example

Request Content-Types: application/json
Query
query invoices($orderBy: OrderByInvoiceInput, $filter: FilterInvoiceInput, $limit: Int, $offset: Int){
  invoices(orderBy: $orderBy, filter: $filter, limit: $limit, offset: $offset){
    id
    salesOrderId
    salesOrderDisplayId
    altId
    statusId
    statusName
    billingAddressId
    shippingAddressId
    notes
    amountDue
    amountPaid
    total
    dueDate
    quickBooksId
    quickBooksSyncToken
    createdAt
    updatedAt
  }
}
Variables
{
  "orderBy": {
    "column": "string",
    "order": "string"
  },
  "filter": {
    "customerIds": [
      "number"
    ],
    "isPaid": "boolean",
    "searchText": "string",
    "statusId": "number",
    "createdAfter": "string",
    "createdBefore": "string"
  },
  "limit": "integer",
  "offset": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "invoices": [
      {
        "id": "integer",
        "salesOrderId": "integer",
        "salesOrderDisplayId": "string",
        "altId": "string",
        "statusId": "integer",
        "statusName": "string",
        "billingAddressId": "integer",
        "shippingAddressId": "integer",
        "notes": "string",
        "amountDue": "number",
        "amountPaid": "number",
        "total": "number",
        "quickBooksId": "integer",
        "quickBooksSyncToken": "string",
        "createdAt": "string",
        "updatedAt": "string"
      }
    ]
  }
}

Fetch Returns

Fetches a list of returns based on filter criteria.

The input object containing variables to order your return query. Click here for more information.

The input object containing variables to filter your return query. Click here for more information.

limit:
integer

The number of records you wish to fetch.

offset:
integer

The number of records to skip over in your request.

Example

Request Content-Types: application/json
Query
query returns($orderBy: OrderByShipmentReturnInput, $filter: FilterShipmentReturnInput, $limit: Int, $offset: Int){
  returns(orderBy: $orderBy, filter: $filter, limit: $limit, offset: $offset){
    id
    warehouseId
    warehouseName
    salesOrderId
    salesOrderDisplayId
    returnDate
    items
    createdAt
    updatedAt
  }
}
Variables
{
  "orderBy": {
    "column": "string",
    "order": "string"
  },
  "filter": {
    "searchText": "string",
    "warehouseId": "number",
    "isReturned": "boolean",
    "createdAfter": "string",
    "createdBefore": "string"
  },
  "limit": "integer",
  "offset": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "returns": [
      {
        "id": "integer",
        "warehouseId": "integer",
        "warehouseName": "string",
        "salesOrderId": "integer",
        "salesOrderDisplayId": "integer",
        "createdAt": "string",
        "updatedAt": "string"
      }
    ]
  }
}

Fetch Consolidated Sales Orders

Fetches a consolidated sales orders based on filter criteria.

The input object containing variables to filter your consolidated sales order query. Click here for more information.

Example

Request Content-Types: application/json
Query
query salesOrdersConsolidated($filter: FilterConsolidateSalesOrderInput){
  salesOrdersConsolidated(filter: $filter){
  }
}
Variables
{
  "filter": {
    "ids": [
      "number"
    ]
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "salesOrdersConsolidated": {}
  }
}

Fetch Sales Orders

Fetches a list of sales orders based on filter criteria.

The input object containing variables to order your sales order query. Click here for more information.

The input object containing variables to filter your sales order query. Click here for more information.

limit:
integer

The number of records you wish to fetch.

offset:
integer

The number of records to skip over in your request.

Example

Request Content-Types: application/json
Query
query salesOrders($orderBy: OrderBySalesOrderInput, $filter: FilterSalesOrderInput, $limit: Int, $offset: Int){
  salesOrders(orderBy: $orderBy, filter: $filter, limit: $limit, offset: $offset){
    id
    displayId
    accountId
    statusId
    originWarehouseId
    altId
    customerId
    notes
    externalNotes
    shipDate
    cancelByDate
    customerPo
    billingAddressId
    shippingAddressId
    subTotal
    shippingTotal
    taxTotal
    total
    createdAt
    updatedAt
  }
}
Variables
{
  "orderBy": {
    "column": "string",
    "order": "string"
  },
  "filter": {
    "ids": [
      "number"
    ],
    "excludeIds": [
      "number"
    ],
    "searchText": "string",
    "labelIds": [
      "number"
    ],
    "userIds": [
      "number"
    ],
    "skuIds": [
      "number"
    ],
    "warehouseIds": [
      "number"
    ],
    "statusIds": [
      "number"
    ],
    "customerIds": [
      "number"
    ],
    "createdAfter": "string",
    "createdBefore": "string"
  },
  "limit": "integer",
  "offset": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "salesOrders": [
      {
        "id": "integer",
        "displayId": "integer",
        "accountId": "integer",
        "statusId": "integer",
        "originWarehouseId": "integer",
        "altId": "string",
        "customerId": "integer",
        "notes": "string",
        "externalNotes": "string",
        "customerPo": "string",
        "billingAddressId": "integer",
        "shippingAddressId": "integer",
        "subTotal": "number",
        "shippingTotal": "number",
        "taxTotal": "number",
        "total": "number",
        "createdAt": "string",
        "updatedAt": "string"
      }
    ]
  }
}

Fetch Sales Order

Fetches a sales order by id.

id:
integer

The numerical ID of the sales order.

Example

Request Content-Types: application/json
Query
query salesOrder($id: Int!){
  salesOrder(id: $id){
    id
    displayId
    accountId
    statusId
    originWarehouseId
    altId
    customerId
    notes
    externalNotes
    shipDate
    cancelByDate
    customerPo
    billingAddressId
    shippingAddressId
    subTotal
    shippingTotal
    taxTotal
    total
    createdAt
    updatedAt
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "salesOrder": {
      "id": "integer",
      "displayId": "integer",
      "accountId": "integer",
      "statusId": "integer",
      "originWarehouseId": "integer",
      "altId": "string",
      "customerId": "integer",
      "notes": "string",
      "externalNotes": "string",
      "customerPo": "string",
      "billingAddressId": "integer",
      "shippingAddressId": "integer",
      "subTotal": "number",
      "shippingTotal": "number",
      "taxTotal": "number",
      "total": "number",
      "createdAt": "string",
      "updatedAt": "string"
    }
  }
}

Create Sales Order

Creates a new sales order.

The input object containing sales order fields for insertion. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation createSalesOrder($input: CreateSalesOrderInput!){
  createSalesOrder(input: $input){
  }
}
Variables
{
  "input": {
    "statusId": "number",
    "originWarehouseId": "number",
    "altId": "string",
    "customerId": "number",
    "labelIds": [
      {
        "id": "number",
        "remove": "boolean"
      }
    ],
    "userIds": [
      {
        "id": "number",
        "remove": "boolean"
      }
    ],
    "customFields": [
      {
        "id": "number",
        "value": "string",
        "remove": "boolean"
      }
    ],
    "lineItems": [
      {
        "id": "number",
        "warehouseId": "number",
        "price": "number",
        "tax": "number",
        "quantity": "number",
        "name": "string",
        "description": "string",
        "bomParentId": "number",
        "bomQuantityMultiplier": "number",
        "bomIsFixed": "boolean",
        "isBomParent": "boolean",
        "lotIds": [
          {
            "id": "number",
            "quantity": "number",
            "remove": "boolean"
          }
        ],
        "remove": "boolean"
      }
    ],
    "returns": [
      {
        "id": "number",
        "warehouseId": "number",
        "packageItems": [
          {
            "id": "number",
            "warehouseId": "number",
            "binId": "number",
            "quantity": "number",
            "remove": "boolean"
          }
        ],
        "returnDate": "object",
        "remove": "boolean"
      }
    ],
    "shipments": [
      {
        "id": "number",
        "packages": [
          null
        ]
      }
    ]
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createSalesOrder": {}
  }
}

Update Sales Order

Updates a sales order record.

The input object containing label fields for updating. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation updateSalesOrder($input: UpdateSalesOrderInput!){
  updateSalesOrder(input: $input){
  }
}
Variables
{
  "input": {
    "statusId": "number",
    "originWarehouseId": "number",
    "id": "number",
    "altId": "string",
    "customerId": "number",
    "labelIds": [
      {
        "id": "number",
        "remove": "boolean"
      }
    ],
    "userIds": [
      {
        "id": "number",
        "remove": "boolean"
      }
    ],
    "customFields": [
      {
        "id": "number",
        "value": "string",
        "remove": "boolean"
      }
    ],
    "lineItems": [
      {
        "id": "number",
        "warehouseId": "number",
        "price": "number",
        "tax": "number",
        "quantity": "number",
        "name": "string",
        "description": "string",
        "bomParentId": "number",
        "bomQuantityMultiplier": "number",
        "bomIsFixed": "boolean",
        "isBomParent": "boolean",
        "lotIds": [
          {
            "id": "number",
            "quantity": "number",
            "remove": "boolean"
          }
        ],
        "remove": "boolean"
      }
    ],
    "shipments": [
      {
        "id": "number",
        "packages": [
          {
            "id": "number",
            "trackingNumber": "string",
            "items": [
              {
                "id": "number",
                "lineItemId": "number",
                "lotIds": [
                  {
                    "id": "number",
                    "quantity": "number",
                    "remove": "boolean"
                  }
                ]
              }
            ]
          }
        ]
      }
    ]
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateSalesOrder": {}
  }
}

Place Shipment

Ships out one of many packages and generates shipping labels and tracking numbers.

salesOrderId:
integer

The numerical ID of the order you wish to place all shipments for.

shipmentId:
integer

The numerical ID of the shipment you wish to place. salesOrderId is required when using this field.

packageId:
integer

The numerical ID of the package you wish to ship. salesOrderId and shipmentId are required when using this field.

Example

Request Content-Types: application/json
Query
mutation placeShipment($salesOrderId: Int, $shipmentId: Int, $packageId: Int){
  placeShipment(salesOrderId: $salesOrderId, shipmentId: $shipmentId, packageId: $packageId){
  }
}
Variables
{
  "salesOrderId": "integer",
  "shipmentId": "integer",
  "packageId": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "placeShipment": {}
  }
}

Cancel Shipment

Cancels a placed shipment and returns the inventory to committed.

shipmentId:
integer

The numerical ID of the shipment you wish to cancel. This will return all shipped inventory to committed.

Example

Request Content-Types: application/json
Query
mutation cancelShipment($shipmentId: Int){
  cancelShipment(shipmentId: $shipmentId){
  }
}
Variables
{
  "shipmentId": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "cancelShipment": {}
  }
}

Receive Return

Marks an RMA as complete.

returnId:
integer

The numerical ID of the return you wish to receive.

Example

Request Content-Types: application/json
Query
mutation receiveReturn($returnId: Int){
  receiveReturn(returnId: $returnId){
  }
}
Variables
{
  "returnId": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "receiveReturn": {}
  }
}

Delete Sales Order

Delete a sales order record.

id:
integer

The numerical ID of the sales order.

Example

Request Content-Types: application/json
Query
mutation deleteSalesOrder($id: Int!){
  deleteSalesOrder(id: $id){
  }
}
Variables
{
  "id": "integer"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "deleteSalesOrder": {}
  }
}

Duplicate Sales Order

Duplicates a provided sales order.

The input object containing sales order fields for duplication. Click here for more information.

Example

Request Content-Types: application/json
Query
mutation duplicateSalesOrder($input: DuplicateSalesOrderInput!){
  duplicateSalesOrder(input: $input){
  }
}
Variables
{
  "input": {
    "statusId": "number",
    "id": "number"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "duplicateSalesOrder": {}
  }
}

Ship Station

The queries and mutations for interacting with the ShipStation API.

Get Carriers

Gets carriers from ShipStation.

Example

Request Content-Types: application/json
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "getCarriers": {}
  }
}

Get Rates

Gets rates from ShipStation based on the provided Sales Order ID, or specified package information.

The input object containing variables to pull rates from ShipStation.

Example

Request Content-Types: application/json
Query
query getRates($input: GetRatesInput!){
  getRates(input: $input){
  }
}
Variables
{
  "input": {
    "carrierCode": "string",
    "weight": "number",
    "length": "number",
    "width": "number",
    "height": "number",
    "salesOrderId": "number",
    "fromPostalCode": "string",
    "toState": "string",
    "toCountry": "string",
    "toPostalCode": "string",
    "toCity": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "getRates": {}
  }
}

Get Import Exceptions

Gets all import exceptions associated with the account.

Example

Request Content-Types: application/json
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "getImportExceptions": [
      {
        "id": "integer",
        "shipStationOrderId": "string",
        "data": "string"
      }
    ]
  }
}

Pull Shipments

Pulls shipment data from ShipStation based on the provided Sales Order IDs, and updates the package tracking numbers.

The input object containing variables to pull your shipment data from ShipStation.

Example

Request Content-Types: application/json
Query
mutation pullShipments($input: PullShipmentsInput!){
  pullShipments(input: $input){
  }
}
Variables
{
  "input": {
    "salesOrderIds": [
      "number"
    ]
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "pullShipments": {}
  }
}

Push Sales Orders

Pushes package data to ShipStation and updates them with the resulting ShipStation Order IDs.

The input object containing variables to push your Sales Orders to ShipStation.

Example

Request Content-Types: application/json
Query
mutation pushSalesOrders($input: [PushSalesOrdersInput]!){
  pushSalesOrders(input: $input){
  }
}
Variables
{
  "input": [
    {
      "salesOrderId": "number",
      "shipmentId": "number",
      "packageId": "number"
    }
  ]
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "pushSalesOrders": {}
  }
}

Pull Sales Orders

Pulls order data from ShipStation and creates Sales Orders with it.