🎉 Your CoinMarketCap coupon is ready. Select a plan below and your 30% discount will apply at checkout.
Free API

JMESPath Free API:Transform JSON Data Instantly

The JMESPath free API gives you a ready-to-use, serverless endpoint for running JSON transformations with the JMESPath query language. It’s public, and perfect for prototyping and testing low-volume automations.

Instead of spinning up infrastructure, you can run JMESPath requests in seconds. Below you’ll find the endpoint, sample code, error format, and ideas for integrating it with your tooling.

https://noteapiconnector-tools.vercel.app/api/jmespath

Quick Start

curl -X POST https://noteapiconnector-tools.vercel.app/api/jmespath \
  -H "content-type: application/json" \
  -d '{
    "data": {
      "people": [
        { "name": "Ana", "age": 30 },
        { "name": "Bob", "age": 20 }
      ]
    },
    "query": "people[?age>`25`].name"
  }'
RESPONSE
["Ana"]

API Reference

URL

https://noteapiconnector-tools.vercel.app/api/jmespath

Method

POST

Headers

content-type: application/json

Request Body

data JSON object or array to transform
query JMESPath expression string

CORS enabled: Call directly from browsers, low-code tools, and automation platforms. No authentication required for testing.

Common Use Cases

Filter Data

Extract only the records that meet your criteria before syncing to Notion databases.

Reshape Objects

Transform nested API responses into flat structures perfect for spreadsheets.

Sort & Rank

Order results by any field and grab top performers for dashboards and reports.

Examples

Need inspiration? Copy any of the curl commands below, hit the JMESPath free API, and tweak the JSON to match your own workflow. For more examples, check our documentation.

Filter Unfinished Tasks

Returns only tasks where completed is false.

curl -X POST https://noteapiconnector-tools.vercel.app/api/jmespath \
  -H "content-type: application/json" \
  -d '{
    "data": {
      "tasks": [
        { "title": "Draft docs", "completed": false, "priority": 2 },
        { "title": "Send invoice", "completed": true, "priority": 1 },
        { "title": "Plan launch", "completed": false, "priority": 3 }
      ]
    },
    "query": "tasks[?completed==`false`].title"
  }'

RESPONSE

["Draft docs", "Plan launch"]

Project Nested Contact Fields

Grabs each customer's name and email from a nested payload.

curl -X POST https://noteapiconnector-tools.vercel.app/api/jmespath \
  -H "content-type: application/json" \
  -d '{
    "data": {
      "customers": [
        {
          "name": "Asha Patel",
          "contact": { "email": "[email protected]", "city": "Austin" }
        },
        {
          "name": "Lee Wong",
          "contact": { "email": "[email protected]", "city": "Seattle" }
        }
      ]
    },
    "query": "customers[].{name: name, email: contact.email}"
  }'

RESPONSE

[
  {
    "name": "Asha Patel",
    "email": "[email protected]"
  },
  {
    "name": "Lee Wong",
    "email": "[email protected]"
  }
]

Sort and Choose Top Results

Orders products by rating and returns the top two names.

curl -X POST https://noteapiconnector-tools.vercel.app/api/jmespath \
  -H "content-type: application/json" \
  -d '{
    "data": {
      "products": [
        { "name": "Starter", "rating": 4.2 },
        { "name": "Pro", "rating": 4.8 },
        { "name": "Enterprise", "rating": 4.6 }
      ]
    },
    "query": "reverse(sort_by(products, &rating))[:2].name"
  }'

RESPONSE

["Pro", "Enterprise"]

Error Handling

Invalid Query Response (400)

Malformed expressions return descriptive error messages:

{
  "error": "RuntimeError: Invalid token: Parse error at column 11..."
}

Frequently Asked Questions

Leave a Comment