RFIDLinked API
Welcome to RFIDLink's API Documentation.
RFIDLinked's API is built using GraphQl, a framework for building consistent and easy to understand APIs. See https://graphql.org/code/ for links to client libraries for various languages that can be used with our API.
If you run into any troubles, please reach our to our Support Team.
How to Authenticate with the API.
All requests to the API must be authenticated against a user in your account. All operations performed against the API will be executed by that user.
You authenticate your requests by providing two request headers when you execute your API request. x-auth-token and x-auth-user. The x-auth-token value is your API Key. The x-auth-user value is your User Id.
How to get your User Id
- Login to RFIDLinked's web portal at https://app.rfidlinked.com/.
- Go to your User Profile page at https://app.rfidlinked.com/user/profile.
- Your User Id will be shown in the table.
How to get your API Key
-
Login to RFIDLinked's web portal at https://app.rfidlinked.com/.
-
Go to your User Profile page at https://app.rfidlinked.com/user/profile.
-
Click on View API Keys
-
Click Create to create a new API key.

-
Give your API Key a name and click
Create. -
You will be shown your Api Key. Copy this value and place it somewhere safe. If anyone else has access to your key, they will be able to use it to access your account.
Using the API Explorer
We've provided a Graphical interface to our API for exploration and testing. You can access this tool by:
-
Login to RFIDLinked's web portal at https://app.rfidlinked.com/.
-
On the API Key you would like to use, click the
Actionsbutton, and selectExplore Api
Terms of Service
API Endpoints
https://app.rfidlinked.com/graphql
Headers
# Your API key.
x-auth-token: YOUR_API_KEY
# Your User Id.
x-auth-user: YOUR_USER_ID
Version
1.0.0
Queries
customFieldById
Description
Retrieve the details about a CustomField by it's id.
Response
Returns a CustomField
Arguments
| Name | Description |
|---|---|
id - ID!
|
Id of the CustomField to retrieve. |
Example
Query
query customFieldById($id: ID!) {
customFieldById(id: $id) {
id
name
type
createdAt
createdBy {
id
email
displayName
role
createdAt
isArchived
}
updatedAt
updatedBy {
id
email
displayName
role
createdAt
isArchived
}
}
}
Variables
{"id": 43}
Response
{
"data": {
"customFieldById": {
"id": 43,
"name": "Size",
"type": "TEXT",
"createdAt": "2025-05-10T03:45:48.727Z",
"createdBy": User,
"updatedAt": "2025-05-10T03:45:48.727Z",
"updatedBy": User
}
}
}
customFields
Description
List all CustomFields within your account.
Response
Returns [CustomField]!
Example
Query
query customFields {
customFields {
id
name
type
createdAt
createdBy {
id
email
displayName
role
createdAt
isArchived
}
updatedAt
updatedBy {
id
email
displayName
role
createdAt
isArchived
}
}
}
Response
{
"data": {
"customFields": [
{
"id": 43,
"name": "Size",
"type": "TEXT",
"createdAt": "2025-05-10T03:45:48.727Z",
"createdBy": User,
"updatedAt": "2025-05-10T03:45:48.727Z",
"updatedBy": User
}
]
}
}
ezTagByTagId
Description
Search for an EzTag by the RFID Tag's TID value.
Response
Returns an EzTag
Arguments
| Name | Description |
|---|---|
tagId - String!
|
The TID value to retrieve associated EzTag for. |
Example
Query
query ezTagByTagId($tagId: String!) {
ezTagByTagId(tagId: $tagId) {
tagId
label1
label2
label3
label4
value1
value2
value3
value4
createdAt
createdBy {
id
email
displayName
role
createdAt
isArchived
}
}
}
Variables
{"tagId": "E2801191200078A0C2360343"}
Response
{
"data": {
"ezTagByTagId": {
"tagId": "E2801191200078A0C2360343",
"label1": "VIN#",
"label2": "Mfr",
"label3": "Model",
"label4": "Year",
"value1": "LD04",
"value2": "Aprilia",
"value3": "RS250",
"value4": 1998,
"createdAt": "2025-11-10T03:45:48.727Z",
"createdBy": User
}
}
}
ezTags
Description
List all EzTags within your account.
Response
Returns [EzTag]!
Example
Query
query ezTags {
ezTags {
tagId
label1
label2
label3
label4
value1
value2
value3
value4
createdAt
createdBy {
id
email
displayName
role
createdAt
isArchived
}
}
}
Response
{
"data": {
"ezTags": [
{
"tagId": "E2801191200078A0C2360343",
"label1": "VIN#",
"label2": "Mfr",
"label3": "Model",
"label4": "Year",
"value1": "LD04",
"value2": "Aprilia",
"value3": "RS250",
"value4": 1998,
"createdAt": "2025-11-10T03:45:48.727Z",
"createdBy": User
}
]
}
}
fileById
Description
Retrieve a File by it's ID.
Response
Returns a File
Arguments
| Name | Description |
|---|---|
id - ID!
|
The Id of the File to retrieve. |
tagFilterCriteria - TagFilterCriteria
|
Optional Argument to Filter tag results to only Tags which match the provided criteria. Ignored if not passed or if not retrieving associated tags. Default = null |
Example
Query
query fileById(
$id: ID!,
$tagFilterCriteria: TagFilterCriteria
) {
fileById(
id: $id,
tagFilterCriteria: $tagFilterCriteria
) {
id
name
notes
owner {
id
email
displayName
role
createdAt
isArchived
}
shareMode
createdAt
updatedAt
lastSyncedAt
isArchived
tags {
tagId
epc
pc
encodingType
sgtin96TagData {
companyId
productId
serial
}
ezTagData {
label1
label2
label3
label4
value1
value2
value3
value4
}
createdAt
updatedAt
lastSyncedAt
createdBy {
id
email
displayName
role
createdAt
isArchived
}
isArchived
}
}
}
Variables
{"id": 12, "tagFilterCriteria": null}
Response
{
"data": {
"fileById": {
"id": 12,
"name": "Inventory List - June",
"notes": "Inventory List - June",
"owner": User,
"shareMode": "Private",
"createdAt": "2025-05-10T03:45:48.727Z",
"updatedAt": "2025-05-10T03:45:48.727Z",
"lastSyncedAt": "2025-05-10T03:45:48.727Z",
"isArchived": false,
"tags": [FlatTag]
}
}
}
files
Description
Retrieve all Files in your account, that the requesting user has access to. Additional optional filters can be applied to filter the returned results.
Response
Returns [FlatFile]!
Arguments
| Name | Description |
|---|---|
fileFilterCriteria - FileFilterCriteria
|
Optional Argument to Filter results to only Files which match the provided criteria. Ignored if not passed. Default = null |
Example
Query
query files($fileFilterCriteria: FileFilterCriteria) {
files(fileFilterCriteria: $fileFilterCriteria) {
id
name
notes
owner {
id
email
displayName
role
createdAt
isArchived
}
shareMode
createdAt
updatedAt
lastSyncedAt
isArchived
}
}
Variables
{"fileFilterCriteria": null}
Response
{
"data": {
"files": [
{
"id": 12,
"name": "Inventory List - June",
"notes": "Inventory List - June",
"owner": User,
"shareMode": "Private",
"createdAt": "2025-05-10T03:45:48.727Z",
"updatedAt": "2025-05-10T03:45:48.727Z",
"lastSyncedAt": "2025-11-10T03:45:48.727Z",
"isArchived": "False"
}
]
}
}
filesWhichContainEpc
Description
Retrieve a list of all Files in your account, which contain a tag with the provided EPC value, in Hex.
Response
Returns [FlatFile]!
Arguments
| Name | Description |
|---|---|
epc - String!
|
The EPC value to search for, in HEX. |
Example
Query
query filesWhichContainEpc($epc: String!) {
filesWhichContainEpc(epc: $epc) {
id
name
notes
owner {
id
email
displayName
role
createdAt
isArchived
}
shareMode
createdAt
updatedAt
lastSyncedAt
isArchived
}
}
Variables
{"epc": "303404673001200000000002"}
Response
{
"data": {
"filesWhichContainEpc": [
{
"id": 12,
"name": "Inventory List - June",
"notes": "Inventory List - June",
"owner": User,
"shareMode": "Private",
"createdAt": "2025-05-10T03:45:48.727Z",
"updatedAt": "2025-05-10T03:45:48.727Z",
"lastSyncedAt": "2025-05-10T03:45:48.727Z",
"isArchived": "False"
}
]
}
}
filesWhichContainTagId
Description
Retrieve a list of all Files in your account, which contain a tag with the provided TID value.
Response
Returns [FlatFile]!
Arguments
| Name | Description |
|---|---|
tagId - String!
|
The TID value to search for. |
Example
Query
query filesWhichContainTagId($tagId: String!) {
filesWhichContainTagId(tagId: $tagId) {
id
name
notes
owner {
id
email
displayName
role
createdAt
isArchived
}
shareMode
createdAt
updatedAt
lastSyncedAt
isArchived
}
}
Variables
{"tagId": "E2801191200078A0C2360343"}
Response
{
"data": {
"filesWhichContainTagId": [
{
"id": 12,
"name": "Inventory List - June",
"notes": "Inventory List - June",
"owner": User,
"shareMode": "Private",
"createdAt": "2025-05-10T03:45:48.727Z",
"updatedAt": "2025-11-10T03:45:48.727Z",
"lastSyncedAt": "2025-05-10T03:45:48.727Z",
"isArchived": "False"
}
]
}
}
productDefinitionByGtin
Description
Retrieve the details about a ProductDefinition by it's Company Identifier and Product Identifier.
Response
Returns a ProductDefinition
Example
Query
query productDefinitionByGtin(
$companyId: String,
$productId: String
) {
productDefinitionByGtin(
companyId: $companyId,
productId: $productId
) {
id
type
name
description
companyId
productId
createdAt
createdBy {
id
email
displayName
role
createdAt
isArchived
}
updatedAt
updatedBy {
id
email
displayName
role
createdAt
isArchived
}
customFieldValues {
customFieldId
value
updatedAt
updatedBy {
id
email
displayName
role
createdAt
isArchived
}
}
}
}
Variables
{"companyId": "0072140", "productId": "001152"}
Response
{
"data": {
"productDefinitionByGtin": {
"id": 43,
"type": "SGTIN96",
"name": "Tennis Shoes",
"description": "Men's Sport Shoes, Size 12, Black",
"companyId": "0072140",
"productId": "001152",
"createdAt": "2025-05-10T03:45:48.727Z",
"createdBy": User,
"updatedAt": "2025-05-10T03:45:48.727Z",
"updatedBy": User,
"customFieldValues": [
ProductDefinitionCustomFieldValue
]
}
}
}
productDefinitionById
Description
Retrieve the details about a ProductDefinition by it's id.
Response
Returns a ProductDefinition
Arguments
| Name | Description |
|---|---|
id - ID!
|
Id of the ProductDefinition to retrieve. |
Example
Query
query productDefinitionById($id: ID!) {
productDefinitionById(id: $id) {
id
type
name
description
companyId
productId
createdAt
createdBy {
id
email
displayName
role
createdAt
isArchived
}
updatedAt
updatedBy {
id
email
displayName
role
createdAt
isArchived
}
customFieldValues {
customFieldId
value
updatedAt
updatedBy {
id
email
displayName
role
createdAt
isArchived
}
}
}
}
Variables
{"id": 43}
Response
{
"data": {
"productDefinitionById": {
"id": 43,
"type": "SGTIN96",
"name": "Tennis Shoes",
"description": "Men's Sport Shoes, Size 12, Black",
"companyId": "0072140",
"productId": "001152",
"createdAt": "2025-11-10T03:45:48.727Z",
"createdBy": User,
"updatedAt": "2025-11-10T03:45:48.727Z",
"updatedBy": User,
"customFieldValues": [
ProductDefinitionCustomFieldValue
]
}
}
}
productDefinitions
Description
List all ProductDefinitions within your account.
Response
Returns [ProductDefinition]!
Example
Query
query productDefinitions {
productDefinitions {
id
type
name
description
companyId
productId
createdAt
createdBy {
id
email
displayName
role
createdAt
isArchived
}
updatedAt
updatedBy {
id
email
displayName
role
createdAt
isArchived
}
customFieldValues {
customFieldId
value
updatedAt
updatedBy {
id
email
displayName
role
createdAt
isArchived
}
}
}
}
Response
{
"data": {
"productDefinitions": [
{
"id": 43,
"type": "SGTIN96",
"name": "Tennis Shoes",
"description": "Men's Sport Shoes, Size 12, Black",
"companyId": "0072140",
"productId": "001152",
"createdAt": "2025-05-10T03:45:48.727Z",
"createdBy": User,
"updatedAt": "2025-05-10T03:45:48.727Z",
"updatedBy": User,
"customFieldValues": [
ProductDefinitionCustomFieldValue
]
}
]
}
}
scanMatchSessionById
Description
Retrieve a ScanMatchSession by it's ID
Response
Returns a ScanMatchSession
Arguments
| Name | Description |
|---|---|
id - ID!
|
The Id of the ScanMatchSession to retrieve. |
Example
Query
query scanMatchSessionById($id: ID!) {
scanMatchSessionById(id: $id) {
id
file {
id
name
notes
owner {
id
email
displayName
role
createdAt
isArchived
}
shareMode
createdAt
updatedAt
lastSyncedAt
isArchived
}
createdBy {
id
email
displayName
role
createdAt
isArchived
}
createdAt
tags {
tagId
epc
pc
encodingType
sgtin96TagData {
companyId
productId
serial
}
ezTagData {
label1
label2
label3
label4
value1
value2
value3
value4
}
createdAt
updatedAt
lastSyncedAt
createdBy {
id
email
displayName
role
createdAt
isArchived
}
isArchived
}
}
}
Variables
{"id": 12}
Response
{
"data": {
"scanMatchSessionById": {
"id": 12,
"file": FlatFile,
"createdBy": User,
"createdAt": "2025-05-10T03:45:48.727Z",
"tags": [FlatTag]
}
}
}
scanMatchSessionsByFileId
Description
Retrieve a list of all ScanMatchSessions for the provided File.Id.
Response
Returns [ScanMatchSession]!
Example
Query
query scanMatchSessionsByFileId(
$fileId: ID!,
$createdAfter: DateTime
) {
scanMatchSessionsByFileId(
fileId: $fileId,
createdAfter: $createdAfter
) {
id
file {
id
name
notes
owner {
id
email
displayName
role
createdAt
isArchived
}
shareMode
createdAt
updatedAt
lastSyncedAt
isArchived
}
createdBy {
id
email
displayName
role
createdAt
isArchived
}
createdAt
tags {
tagId
epc
pc
encodingType
sgtin96TagData {
companyId
productId
serial
}
ezTagData {
label1
label2
label3
label4
value1
value2
value3
value4
}
createdAt
updatedAt
lastSyncedAt
createdBy {
id
email
displayName
role
createdAt
isArchived
}
isArchived
}
}
}
Variables
{"fileId": 12, "createdAfter": null}
Response
{
"data": {
"scanMatchSessionsByFileId": [
{
"id": 12,
"file": FlatFile,
"createdBy": User,
"createdAt": "2025-11-10T03:45:48.727Z",
"tags": [FlatTag]
}
]
}
}
tagByFileIdAndTagId
Description
Search for a TAG by the File it is contained in, and it's TID value.
Response
Returns a Tag
Example
Query
query tagByFileIdAndTagId(
$fileId: ID!,
$tagId: String!
) {
tagByFileIdAndTagId(
fileId: $fileId,
tagId: $tagId
) {
tagId
file {
id
name
notes
owner {
id
email
displayName
role
createdAt
isArchived
}
shareMode
createdAt
updatedAt
lastSyncedAt
isArchived
}
epc
pc
encodingType
sgtin96TagData {
companyId
productId
serial
}
ezTagData {
label1
label2
label3
label4
value1
value2
value3
value4
}
createdAt
updatedAt
lastSyncedAt
createdBy {
id
email
displayName
role
createdAt
isArchived
}
isArchived
}
}
Variables
{"fileId": 12, "tagId": "E2801191200078A0C2360343"}
Response
{
"data": {
"tagByFileIdAndTagId": {
"tagId": "E2801191200078A0C2360343",
"file": FlatFile,
"epc": "303404673001200000000002",
"pc": "3200",
"encodingType": "SGTIN_96",
"sgtin96TagData": Sgtin96TagData,
"ezTagData": EzTagData,
"createdAt": "2025-11-10T03:45:48.727Z",
"updatedAt": "2025-11-10T03:45:48.727Z",
"lastSyncedAt": "2025-05-10T03:45:48.727Z",
"createdBy": User,
"isArchived": true
}
}
}
userById
Description
Retrieve the details about a User by it's id.
Example
Query
query userById($id: ID!) {
userById(id: $id) {
id
email
displayName
role
createdAt
isArchived
}
}
Variables
{"id": 43}
Response
{
"data": {
"userById": {
"id": 43,
"email": "test@example.com",
"displayName": "First Last Name",
"role": "ADMIN",
"createdAt": "2025-05-10T03:45:48.727Z",
"isArchived": false
}
}
}
users
Description
List all users within your account.
Response
Returns [User]
Arguments
| Name | Description |
|---|---|
includeArchived - Boolean
|
Optional Argument to include Archived Users in the result. Defaults to false. Default = false |
Example
Query
query users($includeArchived: Boolean) {
users(includeArchived: $includeArchived) {
id
email
displayName
role
createdAt
isArchived
}
}
Variables
{"includeArchived": false}
Response
{
"data": {
"users": [
{
"id": 43,
"email": "test@example.com",
"displayName": "First Last Name",
"role": "ADMIN",
"createdAt": "2025-05-10T03:45:48.727Z",
"isArchived": true
}
]
}
}
Mutations
createCustomField
Description
Create a new custom field.
Response
Returns a CustomField
Arguments
| Name | Description |
|---|---|
customField - CustomFieldCreate!
|
Example
Query
mutation createCustomField($customField: CustomFieldCreate!) {
createCustomField(customField: $customField) {
id
name
type
createdAt
createdBy {
id
email
displayName
role
createdAt
isArchived
}
updatedAt
updatedBy {
id
email
displayName
role
createdAt
isArchived
}
}
}
Variables
{"customField": CustomFieldCreate}
Response
{
"data": {
"createCustomField": {
"id": 43,
"name": "Size",
"type": "TEXT",
"createdAt": "2025-05-10T03:45:48.727Z",
"createdBy": User,
"updatedAt": "2025-05-10T03:45:48.727Z",
"updatedBy": User
}
}
}
createFile
Description
Create a new file and associated tags.
Response
Returns a File
Arguments
| Name | Description |
|---|---|
file - FileCreate!
|
|
tags - [TagCreate]!
|
Example
Query
mutation createFile(
$file: FileCreate!,
$tags: [TagCreate]!
) {
createFile(
file: $file,
tags: $tags
) {
id
name
notes
owner {
id
email
displayName
role
createdAt
isArchived
}
shareMode
createdAt
updatedAt
lastSyncedAt
isArchived
tags {
tagId
epc
pc
encodingType
sgtin96TagData {
companyId
productId
serial
}
ezTagData {
label1
label2
label3
label4
value1
value2
value3
value4
}
createdAt
updatedAt
lastSyncedAt
createdBy {
id
email
displayName
role
createdAt
isArchived
}
isArchived
}
}
}
Variables
{
"file": FileCreate,
"tags": [TagCreate]
}
Response
{
"data": {
"createFile": {
"id": 12,
"name": "Inventory List - June",
"notes": "Inventory List - June",
"owner": User,
"shareMode": "Private",
"createdAt": "2025-11-10T03:45:48.727Z",
"updatedAt": "2025-11-10T03:45:48.727Z",
"lastSyncedAt": "2025-11-10T03:45:48.727Z",
"isArchived": false,
"tags": [FlatTag]
}
}
}
createProductDefinition
Description
Create a new product definition.
Response
Returns a ProductDefinition
Arguments
| Name | Description |
|---|---|
productDefinition - ProductDefinitionCreate!
|
Example
Query
mutation createProductDefinition($productDefinition: ProductDefinitionCreate!) {
createProductDefinition(productDefinition: $productDefinition) {
id
type
name
description
companyId
productId
createdAt
createdBy {
id
email
displayName
role
createdAt
isArchived
}
updatedAt
updatedBy {
id
email
displayName
role
createdAt
isArchived
}
customFieldValues {
customFieldId
value
updatedAt
updatedBy {
id
email
displayName
role
createdAt
isArchived
}
}
}
}
Variables
{"productDefinition": ProductDefinitionCreate}
Response
{
"data": {
"createProductDefinition": {
"id": 43,
"type": "SGTIN96",
"name": "Tennis Shoes",
"description": "Men's Sport Shoes, Size 12, Black",
"companyId": "0072140",
"productId": "001152",
"createdAt": "2025-05-10T03:45:48.727Z",
"createdBy": User,
"updatedAt": "2025-05-10T03:45:48.727Z",
"updatedBy": User,
"customFieldValues": [
ProductDefinitionCustomFieldValue
]
}
}
}
deleteCustomField
Description
Delete an existing custom field by it's Id.
deleteFile
Description
Delete an existing file by it's Id.
deleteProductDefinition
Description
Delete an existing product definition.
updateCustomField
Description
Update an existing custom field.
Response
Returns a CustomField
Arguments
| Name | Description |
|---|---|
customField - CustomFieldUpdate!
|
Example
Query
mutation updateCustomField($customField: CustomFieldUpdate!) {
updateCustomField(customField: $customField) {
id
name
type
createdAt
createdBy {
id
email
displayName
role
createdAt
isArchived
}
updatedAt
updatedBy {
id
email
displayName
role
createdAt
isArchived
}
}
}
Variables
{"customField": CustomFieldUpdate}
Response
{
"data": {
"updateCustomField": {
"id": 43,
"name": "Size",
"type": "TEXT",
"createdAt": "2025-11-10T03:45:48.727Z",
"createdBy": User,
"updatedAt": "2025-05-10T03:45:48.727Z",
"updatedBy": User
}
}
}
updateFile
Description
Update an existing file, inserting/updating/deleting associated tags.
Response
Returns a File
Arguments
| Name | Description |
|---|---|
id - ID!
|
|
file - FileUpdate
|
|
tags - [TagUpsert]
|
Example
Query
mutation updateFile(
$id: ID!,
$file: FileUpdate,
$tags: [TagUpsert]
) {
updateFile(
id: $id,
file: $file,
tags: $tags
) {
id
name
notes
owner {
id
email
displayName
role
createdAt
isArchived
}
shareMode
createdAt
updatedAt
lastSyncedAt
isArchived
tags {
tagId
epc
pc
encodingType
sgtin96TagData {
companyId
productId
serial
}
ezTagData {
label1
label2
label3
label4
value1
value2
value3
value4
}
createdAt
updatedAt
lastSyncedAt
createdBy {
id
email
displayName
role
createdAt
isArchived
}
isArchived
}
}
}
Variables
{
"id": 4,
"file": FileUpdate,
"tags": [TagUpsert]
}
Response
{
"data": {
"updateFile": {
"id": 12,
"name": "Inventory List - June",
"notes": "Inventory List - June",
"owner": User,
"shareMode": "Private",
"createdAt": "2025-05-10T03:45:48.727Z",
"updatedAt": "2025-11-10T03:45:48.727Z",
"lastSyncedAt": "2025-11-10T03:45:48.727Z",
"isArchived": true,
"tags": [FlatTag]
}
}
}
updateProductDefinition
Description
Update an existing product definition.
Response
Returns a ProductDefinition
Arguments
| Name | Description |
|---|---|
productDefinition - ProductDefinitionUpdate!
|
Example
Query
mutation updateProductDefinition($productDefinition: ProductDefinitionUpdate!) {
updateProductDefinition(productDefinition: $productDefinition) {
id
type
name
description
companyId
productId
createdAt
createdBy {
id
email
displayName
role
createdAt
isArchived
}
updatedAt
updatedBy {
id
email
displayName
role
createdAt
isArchived
}
customFieldValues {
customFieldId
value
updatedAt
updatedBy {
id
email
displayName
role
createdAt
isArchived
}
}
}
}
Variables
{"productDefinition": ProductDefinitionUpdate}
Response
{
"data": {
"updateProductDefinition": {
"id": 43,
"type": "SGTIN96",
"name": "Tennis Shoes",
"description": "Men's Sport Shoes, Size 12, Black",
"companyId": "0072140",
"productId": "001152",
"createdAt": "2025-05-10T03:45:48.727Z",
"createdBy": User,
"updatedAt": "2025-11-10T03:45:48.727Z",
"updatedBy": User,
"customFieldValues": [
ProductDefinitionCustomFieldValue
]
}
}
}
Types
Boolean
Description
The Boolean scalar type represents true or false.
Example
true
CustomField
Description
Represents a Custom Field.
Fields
| Field Name | Description |
|---|---|
id - ID!
|
Unique Identifier. |
name - String!
|
Name of the Custom Field. |
type - CustomFieldType!
|
What type of data is stored in the Custom Field |
createdAt - DateTime!
|
When the Custom Field was created. |
createdBy - User!
|
The User who created the Custom Field. |
updatedAt - DateTime!
|
When the Custom Field was last modified. |
updatedBy - User!
|
The User who last modified the Custom Field. |
Example
{
"id": 43,
"name": "Size",
"type": "TEXT",
"createdAt": "2025-05-10T03:45:48.727Z",
"createdBy": User,
"updatedAt": "2025-05-10T03:45:48.727Z",
"updatedBy": User
}
CustomFieldCreate
Description
Defines a new Custom Field to be created.
Fields
| Input Field | Description |
|---|---|
name - String!
|
Name of the custom field to be created, must be unique. |
type - CustomFieldType!
|
What type of data is stored in the Custom Field |
Example
{"name": "Size", "type": "NUMBER"}
CustomFieldType
Description
Defines the possible Data Types of Custom Fields.
Values
| Enum Value | Description |
|---|---|
|
|
Unstructured Text based values. |
|
|
Integer or Decimal based values. |
|
|
True/False based values. |
|
|
URL/Website Address. Value must begin with 'http://' or 'https://'. |
Example
"TEXT"
CustomFieldUpdate
DateTime
Description
An RFC-3339 compliant date time scalar that accepts string values like 2025-06-21T16:39:57-08:00 or 2025-04-14T06:29:01Z for UTC
Example
"2025-11-10T03:45:48.727Z"
EzTag
Description
Represents an Ez Tag generated within the Application.
Fields
| Field Name | Description |
|---|---|
tagId - String!
|
The RFID Tag's TID unique identifier. |
label1 - String
|
The first fields label. |
label2 - String
|
The second fields label. |
label3 - String
|
The third fields label. |
label4 - String
|
The fourth fields label. |
value1 - String
|
The first field's value. |
value2 - String
|
The second fields value. |
value3 - String
|
The third fields value. |
value4 - String
|
The fourth fields value. |
createdAt - DateTime!
|
When the Ez Tag was created. |
createdBy - User!
|
The user who created the Ez Tag. |
Example
{
"tagId": "E2801191200078A0C2360343",
"label1": "VIN#",
"label2": "Mfr",
"label3": "Model",
"label4": "Year",
"value1": "LD04",
"value2": "Aprilia",
"value3": "RS250",
"value4": 1998,
"createdAt": "2025-05-10T03:45:48.727Z",
"createdBy": User
}
EzTagData
Description
Represents decoded data associated with an Ez encoded Tag.
Fields
| Field Name | Description |
|---|---|
label1 - String
|
The first fields label. |
label2 - String
|
The second fields label. |
label3 - String
|
The third fields label. |
label4 - String
|
The fourth fields label. |
value1 - String
|
The first field's value. |
value2 - String
|
The second fields value. |
value3 - String
|
The third fields value. |
value4 - String
|
The fourth fields value. |
Example
{
"label1": "VIN#",
"label2": "Mfr",
"label3": "Model",
"label4": "Year",
"value1": "LD04",
"value2": "Aprilia",
"value3": "RS250",
"value4": 1998
}
File
Description
Defines a File within your account.
Fields
| Field Name | Description |
|---|---|
id - ID!
|
Unique Identifier. |
name - String!
|
Name of the file, value must be unique. |
notes - String!
|
Notes associated with the file. |
owner - User!
|
User who originally created the file. |
shareMode - FileShareMode!
|
Sharing mode of the file. |
createdAt - DateTime!
|
Timestamp of when the file was created. |
updatedAt - DateTime!
|
Timestamp of when the file record was last updated. |
lastSyncedAt - DateTime!
|
When the file was last synced to the cloud from a device with a meaningful change. Because device to cloud synchronization of File and Tag data happens asynchronously, you may have a File which was modified at
Additionally, this field will be updated when one or more Tags within the file have been modified in some way. In most scenarios where you want to make a query like "show me all the Files that have changed since the last time I checked" you would want to filter over this field. |
isArchived - Boolean!
|
If the file has been deleted. |
tags - [FlatTag]!
|
Collection of Tags associated with the file. |
Example
{
"id": 12,
"name": "Inventory List - June",
"notes": "Inventory List - June",
"owner": User,
"shareMode": "Private",
"createdAt": "2025-11-10T03:45:48.727Z",
"updatedAt": "2025-11-10T03:45:48.727Z",
"lastSyncedAt": "2025-11-10T03:45:48.727Z",
"isArchived": true,
"tags": [FlatTag]
}
FileCreate
Description
Defines a new File to be created.
Fields
| Input Field | Description |
|---|---|
name - String!
|
Name of the file to be created, must be unique. |
notes - String!
|
Notes associated with the file. |
shareMode - FileShareMode!
|
Sharing mode of the file. |
Example
{
"name": "Inventory List - June",
"notes": "Inventory List - June",
"shareMode": "Private"
}
FileFilterCriteria
Description
Defines Filter criteria over querying File(s). If multiple filters are passed, they will be AND'd together.
Fields
| Input Field | Description |
|---|---|
createdAfter - DateTime
|
Optional Argument to filter results by only those created after the provided timestamp. Ignored if not passed. Default = null |
updatedAfter - DateTime
|
Optional Argument to filter results by only those which have been updated after the provided timestamp. Ignored if not passed. Default = null |
lastSyncedAfter - DateTime
|
Optional Argument to filter results by only those which have been synced after the provided timestamp. Ignored if not passed. See note under |
ownerId - Long
|
Optional Argument to filter results by only those which are owned by the provided User Id. Only files which the requesting User has at least READ permission to will be returned. Ignored if not passed. Default = null |
Example
{
"createdAfter": "2025-05-10T03:45:48.727Z",
"updatedAfter": "2025-11-10T03:45:48.727Z",
"lastSyncedAfter": "2025-11-10T03:45:48.727Z",
"ownerId": Long
}
FileUpdate
Description
Defines the fields on an existing file to be updated.
Fields
| Input Field | Description |
|---|---|
name - String
|
Updated Name of the file. |
notes - String
|
Updated Notes associated with the file. |
shareMode - FileShareMode
|
Updated Sharing mode of the file. |
isArchived - Boolean
|
If the file should been deleted. |
Example
{
"name": "Inventory List - June",
"notes": "Inventory List - June",
"shareMode": "Private",
"isArchived": "False"
}
FlatFile
Description
Defines a File within your account.
Fields
| Field Name | Description |
|---|---|
id - ID!
|
Unique Identifier. |
name - String!
|
Name of the file, value must be unique. |
notes - String!
|
Notes associated with the file. |
owner - User!
|
User who originally created the file. |
shareMode - FileShareMode!
|
Sharing mode of the file. |
createdAt - DateTime!
|
Timestamp of when the file was created. |
updatedAt - DateTime!
|
Timestamp of when the file record was last updated. |
lastSyncedAt - DateTime!
|
When the file was last synced to the cloud from a device with a meaningful change. Because device to cloud synchronization of File and Tag data happens asynchronously, you may have a File which was modified at
Additionally, this field will be updated when one or more Tags within the file have been modified in some way. In most scenarios where you want to make a query like "show me all the Files that have changed since the last time I checked" you would want to filter over this field. |
isArchived - Boolean!
|
If the file has been deleted. |
Example
{
"id": 12,
"name": "Inventory List - June",
"notes": "Inventory List - June",
"owner": User,
"shareMode": "Private",
"createdAt": "2025-05-10T03:45:48.727Z",
"updatedAt": "2025-05-10T03:45:48.727Z",
"lastSyncedAt": "2025-05-10T03:45:48.727Z",
"isArchived": "False"
}
FlatTag
Description
Represents a Tag associated with a File
Fields
| Field Name | Description |
|---|---|
tagId - String!
|
The RFID Tag's TID unique identifier. |
epc - String!
|
The RFID Tag's EPC field as Hex. |
pc - String!
|
The RFID Tag's PC field as Hex. |
encodingType - TagEncodingType!
|
How the EPC field is encoded. |
sgtin96TagData - Sgtin96TagData
|
If the Tag uses SGTIN-96 encoding, the decoded SGTIN-96 data fields. Otherwise null |
ezTagData - EzTagData
|
If the Tag uses EZ Tag encoding, the decoded EZ Tag data fields. Otherwise null |
createdAt - DateTime!
|
When the tag was first scanned. |
updatedAt - DateTime!
|
When the tag was last updated. |
lastSyncedAt - DateTime!
|
When the tag was last synced to the cloud from a device with a meaningful change. Because device to cloud synchronization of File and Tag data happens asynchronously, you may have a tag which was modified at
In most scenarios where you want to make a query like "show me all the tags that have changed since the last time I checked" you would want to filter over this field. |
createdBy - User!
|
Which user originally scanned the tag. |
isArchived - Boolean!
|
If the tag has been removed from the file. |
Example
{
"tagId": "E2801191200078A0C2360343",
"epc": "303404673001200000000002",
"pc": "3200",
"encodingType": "SGTIN_96",
"sgtin96TagData": Sgtin96TagData,
"ezTagData": EzTagData,
"createdAt": "2025-05-10T03:45:48.727Z",
"updatedAt": "2025-11-10T03:45:48.727Z",
"lastSyncedAt": "2025-11-10T03:45:48.727Z",
"createdBy": User,
"isArchived": true
}
ID
Description
The ID scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4") or integer (such as 4) input value will be accepted as an ID.
Example
4
Long
Description
This represents the Long number type
Example
Long
ProductDefinition
Description
Represents a Product Definition.
Fields
| Field Name | Description |
|---|---|
id - ID!
|
Unique Identifier. |
type - ProductDefinitionType!
|
Type of Product Definition. |
name - String!
|
Name of the Product Definition. |
description - String!
|
Description of the Product Definition. |
companyId - String
|
CompanyId associated with the Product Definition. |
productId - String
|
ProductId associated with the Product Definition. |
createdAt - DateTime!
|
When the Product Definition was created. |
createdBy - User!
|
The User who created the Product Definition. |
updatedAt - DateTime!
|
When the Product Definition was last modified. |
updatedBy - User!
|
The User who last modified the Product Definition. |
customFieldValues - [ProductDefinitionCustomFieldValue]!
|
Collection of CustomField value's associated with the Product Definition. |
Example
{
"id": 43,
"type": "SGTIN96",
"name": "Tennis Shoes",
"description": "Men's Sport Shoes, Size 12, Black",
"companyId": "0072140",
"productId": "001152",
"createdAt": "2025-11-10T03:45:48.727Z",
"createdBy": User,
"updatedAt": "2025-11-10T03:45:48.727Z",
"updatedBy": User,
"customFieldValues": [ProductDefinitionCustomFieldValue]
}
ProductDefinitionCreate
Description
Defines a Product Definition to be created.
Fields
| Input Field | Description |
|---|---|
name - String!
|
Name of the Product Definition, must be unique. |
type - ProductDefinitionType!
|
Type of Product Definition. |
description - String!
|
Description of the Product Definition. |
companyId - String
|
"For SGTIN96 Product Definitions Required: GTIN CompanyId associated with the Product Definition." "For RFIDLinked ProTag Product Definitions: pass null." |
productId - String
|
"For SGTIN96 Product Definitions Required: GTIN ProductId associated with the Product Definition." "For RFIDLinked ProTag Product Definitions: pass null." |
customFieldValues - [ProductDefinitionCustomFieldValueCreateOrUpdate!]
|
Optionally pass a Collection of ProductDefinitionCustomFieldValueCreateOrUpdate to associate a CustomField's value with the Product Definition. |
startingSerial - Long
|
Optionally pass a starting Serial Number. If not passed, 0 will be assumed. Must be positive. |
Example
{
"name": "Tennis Shoes",
"type": "SGTIN96",
"description": "Men's Sport Shoes, Size 12, Black",
"companyId": "0072140",
"productId": "001152",
"customFieldValues": [
ProductDefinitionCustomFieldValueCreateOrUpdate
],
"startingSerial": Long
}
ProductDefinitionCustomFieldValue
Description
Represents a Custom Field's value associated to a given Product Definition.
Fields
| Field Name | Description |
|---|---|
customFieldId - ID!
|
Reference to the CustomField's Identifier. |
value - String!
|
Value stored in the Custom Field for the given Product Definition. |
updatedAt - DateTime!
|
When the Custom Field Value for this Product Definition was last modified. |
updatedBy - User!
|
The User who last modified the Custom Field Value for this Product Definition. |
Example
{
"customFieldId": 42,
"value": "Black",
"updatedAt": "2025-11-10T03:45:48.727Z",
"updatedBy": User
}
ProductDefinitionCustomFieldValueCreateOrUpdate
Description
Represents creating or updating a Custom Field's value associated to a given Product Definition.
Example
{"customFieldId": 42, "value": "Black"}
ProductDefinitionType
Description
Defines the Type of a ProductDefinition
Values
| Enum Value | Description |
|---|---|
|
|
SGTIN96 Product Definition |
|
|
RFIDLinked Pro Tag Product Definition |
Example
"SGTIN96"
ProductDefinitionUpdate
Description
Defines a Product Definition to be created.
Fields
| Input Field | Description |
|---|---|
id - ID!
|
Identifier for Product Definition to be updated. |
name - String!
|
Name of the Product Definition, must be unique. |
description - String!
|
Description of the Product Definition. |
customFieldValues - [ProductDefinitionCustomFieldValueCreateOrUpdate!]
|
Optionally pass a Collection of ProductDefinitionCustomFieldValueCreateOrUpdate to associate a CustomField's value with the Product Definition. If not passed, no modifications to the ProductDefinition's CustomField values will be performed. |
removeCustomFieldValues - [ID!]
|
Optionally pass a Collection of CustomField Identifiers to be explicitly removed from the ProductDefinition |
Example
{
"id": 43,
"name": "Tennis Shoes",
"description": "Men's Sport Shoes, Size 12, Black",
"customFieldValues": [
ProductDefinitionCustomFieldValueCreateOrUpdate
],
"removeCustomFieldValues": ["4"]
}
ScanMatchSession
Description
Defines a ScanMatch session associated with a File.
Fields
| Field Name | Description |
|---|---|
id - ID!
|
Unique Identifier. |
file - FlatFile!
|
The file this Scan Match Session is associated with. |
createdBy - User!
|
Which user performed the Scan Match Session. |
createdAt - DateTime!
|
When the Scan Match Session was performed. |
tags - [FlatTag]!
|
Collection of Tags found during the Scan Match Session. |
Example
{
"id": 12,
"file": FlatFile,
"createdBy": User,
"createdAt": "2025-05-10T03:45:48.727Z",
"tags": [FlatTag]
}
Sgtin96TagData
Description
Represents decoded data associated with a SGTIN-96 encoded Tag.
Example
{"companyId": "0072140", "productId": "001152", "serial": 2}
String
Description
The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
Example
"abc123"
Tag
Description
Represents a Tag associated with a File
Fields
| Field Name | Description |
|---|---|
tagId - String!
|
The RFID Tag's TID unique identifier. |
file - FlatFile!
|
The file this tag is associated with. |
epc - String!
|
The RFID Tag's EPC field as Hex. |
pc - String!
|
The RFID Tag's PC field as Hex. |
encodingType - TagEncodingType!
|
How the EPC field is encoded. |
sgtin96TagData - Sgtin96TagData
|
If the Tag uses SGTIN-96 encoding, the decoded SGTIN-96 data fields. Otherwise null |
ezTagData - EzTagData
|
If the Tag uses EZ Tag encoding, the decoded EZ Tag data fields. Otherwise null |
createdAt - DateTime!
|
When the tag was first scanned. |
updatedAt - DateTime!
|
When the tag was last updated. |
lastSyncedAt - DateTime!
|
When the tag was last synced to the cloud from a device with a meaningful change. Because device to cloud synchronization of File and Tag data happens asynchronously, you may have a tag which was modified at
In most scenarios where you want to make a query like "show me all the tags that have changed since the last time I checked" you would want to filter over this field. |
createdBy - User!
|
Which user originally scanned the tag. |
isArchived - Boolean!
|
If the tag has been removed from the file. |
Example
{
"tagId": "E2801191200078A0C2360343",
"file": FlatFile,
"epc": "303404673001200000000002",
"pc": "3200",
"encodingType": "SGTIN_96",
"sgtin96TagData": Sgtin96TagData,
"ezTagData": EzTagData,
"createdAt": "2025-05-10T03:45:48.727Z",
"updatedAt": "2025-11-10T03:45:48.727Z",
"lastSyncedAt": "2025-05-10T03:45:48.727Z",
"createdBy": User,
"isArchived": false
}
TagCreate
Description
Defines a new Tag to be created. Tags are unique based on their TagId field.
Example
{"tagId": "E2801191200078A0C2360343", "epc": "303404673001200000000002"}
TagEncodingType
Description
Defines the Encoding of a Tag
Values
| Enum Value | Description |
|---|---|
|
|
Unknown Encoding |
|
|
SGTIN 96 Encoding |
|
|
GIAI 96 Encoding |
|
|
EzTag Encoding |
|
|
RFIDLinked Pro Tag Encoding |
Example
"UNKNOWN"
TagFilterCriteria
Description
Defines Filter criteria over querying Tag(s). If multiple filters are passed, they will be AND'd together.
Fields
| Input Field | Description |
|---|---|
createdAfter - DateTime
|
Optional Argument to filter results by only those created after the provided timestamp. Ignored if not passed. Default = null |
updatedAfter - DateTime
|
Optional Argument to filter results by only those which have been updated after the provided timestamp. Ignored if not passed. Default = null |
lastSyncedAfter - DateTime
|
Optional Argument to filter results by only those which have been synced after the provided timestamp. Ignored if not passed. See note under |
Example
{
"createdAfter": "2025-11-10T03:45:48.727Z",
"updatedAfter": "2025-11-10T03:45:48.727Z",
"lastSyncedAfter": "2025-05-10T03:45:48.727Z"
}
TagOperation
Description
Defines how a tag should be modified during an Update operation.
Values
| Enum Value | Description |
|---|---|
|
|
If no tag exists with the provided TagId, create a new tag. If a tag exists with the provided TagId, update it. |
|
|
Delete the tag with the provided TagId. |
Example
"Upsert"
TagUpsert
Description
Defines how a Tag will be modified during a File update request. Tags are uniquely identified by their TagId field.
Fields
| Input Field | Description |
|---|---|
tagId - String!
|
The RFID Tag's TID unique identifier. |
epc - String
|
The RFID Tag's EPC field as Hex. |
operation - TagOperation
|
What operation to perform on the provided tag. |
Example
{
"tagId": "E2801191200078A0C2360343",
"epc": "303404673001200000000002",
"operation": "Upsert"
}
User
Description
Represents a User within your RFIDLinked account.
Example
{
"id": 43,
"email": "test@example.com",
"displayName": "First Last Name",
"role": "ADMIN",
"createdAt": "2025-11-10T03:45:48.727Z",
"isArchived": false
}
UserRole
Description
Defines the possible Roles of a User
Values
| Enum Value | Description |
|---|---|
|
|
Standard User |
|
|
Administrator User |
Example
"USER"