Products
Create, manage and query Products.
Last updated
Was this helpful?
Create, manage and query Products.
Last updated
Was this helpful?
Product entities describe any offered product or service, as defined by . Products are specified by their name, and optional .
Products are not unique by name, across the Graphlit project.
The createProduct
mutation enables the creation of a product by accepting the product name
, uri
, manufacturer
and sku
. It returns essential details, including the ID and name of the newly generated product.
Mutation:
mutation CreateProduct($product: ProductInput!) {
createProduct(product: $product) {
id
name
}
}
Variables:
{
"product": {
"sku": "gpt-35-turbo",
"manufacturer": "OpenAI",
"uri": "https://www.openai.com",
"description": "Large Language Model",
"name": "GPT-3.5"
}
}
Response:
{
"id": "8a32f02a-fa37-4df2-8efb-860a6d566c83",
"name": "GPT-3.5"
}
The updateProduct
mutation enables the updating of a product by accepting the product name
and other optional fields like sku
.
Mutation:
mutation UpdateProduct($product: ProductUpdateInput!) {
updateProduct(product: $product) {
id
name
}
}
Variables:
{
"product": {
"sku": "gpt-4",
"manufacturer": "OpenAI",
"uri": "https://www.openai.com",
"description": "Large Language Model",
"id": "8a32f02a-fa37-4df2-8efb-860a6d566c83",
"name": "GPT-4"
}
}
Response:
{
"id": "8a32f02a-fa37-4df2-8efb-860a6d566c83",
"name": "GPT-4"
}
The deleteProduct
mutation allows the deletion of a product by utilizing the id
parameter, and it returns the ID and state of the deleted product.
Mutation:
mutation DeleteProduct($id: ID!) {
deleteProduct(id: $id) {
id
state
}
}
Variables:
{
"id": "8a32f02a-fa37-4df2-8efb-860a6d566c83"
}
Response:
{
"id": "8a32f02a-fa37-4df2-8efb-860a6d566c83",
"state": "DELETED"
}
The deleteProducts
mutation allows the deletion of multiple products, as specified by the ids
array parameter, and it returns the ID and state of the deleted products.
Mutation:
mutation DeleteProducts($ids: [ID!]!) {
deleteProducts(ids: $ids) {
id
state
}
}
Variables:
{
"ids": [
"39fcf408p-15ca-4cc2-9476-622d64aa38f3",
"93476a0c-d567-4624-9d5e-df43dfff92ea"
]
}
Response:
[
{
"id": "93476a0c-d567-4624-9d5e-df43dfff92ea",
"state": "DELETED"
},
{
"id": "39fcf408-15ca-4cc2-9476-622d64aa38f3",
"state": "DELETED"
}
]
The product
query allows you to retrieve specific details of a product by providing the id
parameter.
Query:
query GetProduct($id: ID!) {
product(id: $id) {
id
name
manufacturer
model
brand
upc
sku
releaseDate
productionDate
}
}
Variables:
{
"id": "8a32f02a-fa37-4df2-8efb-860a6d566c83"
}
Response:
{
"sku": "gpt-4",
"manufacturer": "OpenAI",
"id": "8a32f02a-fa37-4df2-8efb-860a6d566c83",
"name": "GPT-4"
}
Query Products
The products
query allows you to retrieve all products. It returns a list of product results, including the ID and name for each product.
Query:
query QueryProducts($filter: ProductFilter!) {
products(filter: $filter) {
results {
id
name
manufacturer
model
brand
upc
sku
releaseDate
productionDate
}
}
}
Variables:
{
"filter": {
"offset": 0,
"limit": 100
}
}
Response:
{
"results": [
{
"sku": "gpt-4",
"manufacturer": "OpenAI",
"id": "8a32f02a-fa37-4df2-8efb-860a6d566c83",
"name": "GPT-4"
}
]
}
Query Products By Name
The products
query allows you to retrieve products based on a specific filter criteria, via the name
parameter. In this example, the name
is set to "gpt." It returns a list of product results containing the ID and name for each matching product.
Query:
query QueryProducts($filter: ProductFilter!) {
products(filter: $filter) {
results {
id
name
manufacturer
model
brand
upc
sku
releaseDate
productionDate
}
}
}
Variables:
{
"filter": {
"name": "gpt",
"offset": 0,
"limit": 100
}
}
Response:
{
"results": [
{
"sku": "gpt-4",
"manufacturer": "OpenAI",
"id": "8a32f02a-fa37-4df2-8efb-860a6d566c83",
"name": "GPT-4"
}
]
}
Queries
Mutations
Objects