Examples

How to perform Metrics API queries on the cart resource

Breakdown

The following request performs a breakdown query on the cart resource:

curl -g -X POST \
  'https://{{your_domain}}.commercelayer.io/metrics/carts/breakdown' \
  -H 'Accept: application/vnd.api.v1+json' \
  -H 'Content-Type: application/vnd.api+json' \
  -H 'Authorization: Bearer {{your_access_token}}' \
  -d '{
    "breakdown": {
        "by": "billing_address.city",
        "field": "order.total_amount_with_taxes",
        "operator": "stats",
        "sort": "desc",
        "limit": 10,
        "breakdown": {
            "by": "line_items.code",
            "field": "line_items.total_amount",
            "operator": "sum",
            "sort": "asc",
            "limit": 10
        }
    },
    "filter": {
        "order": {
            "date_from": "2021-02-28T00:00:00Z",
            "date_to": "2022-02-28T23:59:59Z",
            "date_field": "current_date"
        },
        "line_items" : {
            "types": {
                "in": ["skus"]
             },
            "options": {
              "quantity": {
                "gte": 1
              }
            }
        }
    }
}'

Date breakdown

The following request performs a date breakdown query on the cart resource:

curl -g -X POST \
  'https://{{your_domain}}.commercelayer.io/metrics/carts/date_breakdown' \
  -H 'Accept: application/vnd.api.v1+json' \
  -H 'Content-Type: application/vnd.api+json' \
  -H 'Authorization: Bearer {{your_access_token}}' \
  -d '{
    "date_breakdown": {
      "by": "order.created_at",
      "field": "order.total_amount_with_taxes",
      "operator": "stats",
      "interval": "year",
      "breakdown": {
        "by": "order.country_code",
        "field": "order.id",
        "operator": "value_count",
        "sort": "desc",
        "limit": 5
      }
    },
    "filter": {
      "order": {
        "date_from": "2022-01-01T00:00:00Z",
        "date_to": "2022-12-31T23:59:00Z"
      },
      "line_items": {
        "types": {
          "in": ["skus"]
        }
      },
      "billing_address": {
        "localized": true,
        "business": false
      }
    }
  }'

Stats

The following request performs a stats query on the cart resource:

curl -g -X POST \
  'https://{{your_domain}}.commercelayer.io/metrics/carts/stats' \
  -H 'Accept: application/vnd.api.v1+json' \
  -H 'Content-Type: application/vnd.api+json' \
  -H 'Authorization: Bearer {{your_access_token}}' \
  -d '{
    "stats": {
      "field": "order.total_amount",
      "operator": "stats"
    },
    "filter": {
      "order": {
        "date_from": "2022-01-01T00:00:00Z",
        "date_to": "2022-12-31T23:59:00Z",
        "date_field": "created_at",
        "total_amount": {
          "gte": 1000
        }
      },
      "line_items": {
        "types": {
          "in": ["skus"]
        },
        "options": {
          "quantity": {
            "gte": 1
          }
        }
      }
    }
  }'

The following request performs a search query on the cart resource:

curl -g -X POST \
  'https://{{your_domain}}.commercelayer.io/metrics/carts/search' \
  -H 'Accept: application/vnd.api.v1+json' \
  -H 'Content-Type: application/vnd.api+json' \
  -H 'Authorization: Bearer {{your_access_token}}' \
  -d '{
    "search": {
      "limit": 5,
      "sort": "desc",
      "sort_by": "order.created_at",
      "fields": [
        "order.id",
        "order.number",
        "line_items.item_type",
        "line_items.quantity"
      ]
    },
    "filter": {
      "order": {
        "date_from": "2022-01-01T00:00:00Z",
        "date_to": "2022-12-31T23:59:00Z"
      },
      "billing_address": {
        "localized": true,
        "business": false
      }
    }
  }'

Last updated