GRAPHQL API Engine

An Unparalleled
Development Experience.

8base provides the most robust GraphQL-based query language for your API.

The 8base GraphQL Engine

8base provides the most robust GraphQL-based query language for your API.

A robust query language designed for front-end developers

Auto-generated

Auto-generated CRUD operations for all data objects.

Real-Time

Easily build real-time features using GraphQL subscriptions powered by Websockets.

Advanced Capabilities

Advanced query syntax for filtering, full text search, sorting, pagination, groupings and aggregations.

Auto-Documented

All your operations for backend resources are auto-documented.

Smart Fields

Files and Smart Fields

Groupings & Aggregations

Filtering, Pagination, Sorting

Filtering, Pagination, Sorting

Filtering, Pagination, Sorting

Mutations

Mutations

Query Data

Query Data From Salesforce


# Select first 5 employees from 'technology' department 
# and get projects they are working on

{
  department(name: "technology") {    
    employees(first: 5) {
      count
      items {
        name
        projects {
          items {
            title
          }
        }
      }
    }
  }
}

# Get first 5 projects with ‘UI’ or ‘Integrations’ 
# tags and order them by creation date

{
  projectsList(
    filter: {tags: {some: {name: {in: ["UI", "Integrations"]}}}}
    first: 5
    orderBy: [createdAt_DESC]
  ) {
    items {
      title
      tags {
        items {
          name
        }
      }
    }
  }
}

# Create a new project, add two employees to it
# and attach a new ‘PDF’ tag in a single transaction

mutation {
  projectCreate(data: {
    title: "Sales Presentation v3.0"
    members: {
      connect: [
        { id: "cjvy7r28l00j701s4etrbfakq"},
        { id: "cjvy7rdoj00je01s48z3lg56n"}
      ]
    },
    tags: {
      create: {
        name: "PDF"
      }
    }
  }) {
    title
    members {
      items {
        name
      }
    }
    tags {
      items {
        name
      }
    }
  }
}

# Query employee picture and address
# ‘address’ is a Smart Field that has sub-fields

{
  employee(id: "cjvy7mp8e001401pbczhi1ry2") {
    name
    picture {
      downloadUrl
    }
    address {
      country
      zip
    }
  }
}

# Get data from connected Salesforce instance
# Query related tables in a single query

{
  salesforce {
    account(id: "001f400000f1DnZAAU") {
      Name
      Opportunities {
        items {
          Name
        }
      }
    }
  }
}

# Group articles by their author's name, count how many articles belong to each author, and return each groups article IDs while excluding anyarticles that do NOT have an author
# Query related tables in a single query

{
  articlesList(groupBy: {
    query: {
      author: {
        name: {
          as: "authorName"
        }
      },
      id: {
        as: "authorPosts",
        fn: {
          aggregate: COUNT
        }
      },
      _groupIds: {
        as: "postsIds"
      }
    },
    having: {
      alias: "authorName"
      string: {
        is_not_empty: true
      }
    }
  }) {
    groups {
      authorName: String
      authorPosts: Int
      postsIds: GroupIds
    }
  }
}

{
  "data": {
    "department": {
      "employees": {
        "count": 6,
        "items": [
          {
            "name": "Isabel Fisher",
            "projects": {
              "items": [
                {
                  "title": "Dashboard v2.0"
                }
              ]
            }
          },
          {
            "name": "Cristen Adams",
            "projects": {
              "items": [
                {
                  "title": "Data migration"
                },
                {
                  "title": "New Login UI"
                }
              ]
            }
          },
          {
            "name": "Ellie Austin",
            "projects": {
              "items": [
                {
                  "title": "Dashboard v2.0"
                },
                {
                  "title": "Data migration"
                }
              ]
            }
          },
          {
            "name": "Naseem Carney",
            "projects": {
              "items": [
                {
                  "title": "New Login UI"
                }
              ]
            }
          },
          {
            "name": "Kaydan Harrell",
            "projects": {
              "items": []
            }
          }
        ]
      }
    }
  }
}

{
  "data": {
    "projectsList": {
      "items": [
        {
          "title": "Dashboard v2.0",
          "tags": {
            "items": [
              {
                "name": "ReactJS"
              },
              {
                "name": "UI"
              }
            ]
          }
        },
        {
          "title": "Data migration",
          "tags": {
            "items": [
              {
                "name": "Integrations"
              }
            ]
          }
        },
        {
          "title": "New Login UI",
          "tags": {
            "items": [
              {
                "name": "ReactJS"
              },
              {
                "name": "UI"
              }
            ]
          }
        }
      ]
    }
  }
}

{
  "data": {
    "projectCreate": {
      "title": "Sales Presentation v3.0",
      "members": {
        "items": [
          {
            "name": "Bryan Rivas"
          },
          {
            "name": "Gabriela Patterson"
          }
        ]
      },
      "tags": {
        "items": [
          {
            "name": "PDF"
          }
        ]
      }
    }
  }
}

{
  "data": {
    "employee": {
      "name": "Isabel Fisher",
      "picture": {
        "downloadUrl": "https://..."
      },
      "address": {
        "country": "United States",
        "zip": "56301"
      }
    }
  }
}

{
  "data": {
    "salesforce": {
      "account": {
        "Name": "GenePoint",
        "Opportunities": {
          "items": [
            {
              "Name": "GenePoint Standby Generator"
            },
            {
              "Name": "GenePoint Lab Generators"
            },
            {
              "Name": "GenePoint SLA"
            }
          ]
        }
      }
    }
  }
}

{
  "data": {
    "articlesList": {
      "groups": [
        {
          "authorName": "James Huxley",
          "authorPosts": 12,
          "postsIds": [
            "ck37jzw2f001b01l7dhm09gcu",
            "ck37jzw2f001j01l77093d05d",
            "ck37jzw2f001a01l73cnf8ax5",
            "ck37jzw2f001i01l723258t3i",
            "ck37jzw2f001h01l78n2hagxp",
            "ck37jzw2f001g01l71wtk87kp",
            "ck37jzw2f001o01l7hjp5ee4n",
            "ck37jzw2f001f01l787o65uh7",
            "ck37jzw2f001e01l76wbmgnrt",
            "ck37jzw2f001m01l74cz49nb4",
            "ck37jzw2f001l01l7f93be80q",
            "ck37jzw2f001c01l78ga4brgb"
          ]
        },
        {
          "authorName": "Huckelberry Ben",
          "authorPosts": 7,
          "postsIds": [
            "ck37jzw2g002501l73ol60z36",
            "ck37jzw2g002l01l75799d0f4",
            "ck37jzw2g002t01l75ehxgbyt",
            "ck37jzw2h003g01l76rzaayho",
            "ck37jzw2g002c01l79r61banv",
            "ck37jzw2g002q01l77hg3hgz2",
            "ck37jzw2g002801l7ha9w90ov"
          ]
        },
        {
          "authorName": "Stephen Begzz",
          "authorPosts": 10,
          "postsIds": [
            "ck37jzw2o005z01l74727gcjl",
            "ck37jzw2n005201l7d5aidgfv",
            "ck37jzw2n004t01l7erv4fkom",
            "ck37jzw2m003w01l7cafeag37",
            "ck37jzw2p007701l7e0w5949g",
            "ck37jzw2n004y01l714dicfap",
            "ck37jzw2n005u01l7hg1u6yii",
            "ck37jzw2n004p01l78w0qfm2i",
            "ck37jzw2n005d01l78g7kd290",
            "ck37jzw2o006801l7ghhs0gm8"
          ]
        }
      ]
    }
  }
}

Integrated GraphQL Developer Tools

8base provides the most robust GraphQL-based query language for your API.

Change your data model and immediately query it using the 8base API Explorer. Reference your auto-generated documentation. Construct your queries in the editor before copying them to your frontend or mobile application.

Access your Salesforce.com
instance using GraphQL

Why build custom middleware when you can build powerful modern
applications instantly with your Salesforce.com data.

LEarn more

What are people saying about 8base?

Angel Lacret
Angel Lacret
Chief of Product Development @ Cobuild Lab
“8base cuts in half all the things that you need to do to create a well-designed application.”
Eva Hankova
Eva Hankova
Front-end Developer, UI/UX Designer @ IBM
"8base's GraphQL API is amazing! It gives me everything I need to quickly build front-end apps with robust filters, sorting and pagination for my data with zero backend work."
Ryan Macy
Ryan Macy
chief technology officer @ EvidenceCare
"GraphQL is a really amazing solution for a very serious problem, which is making APIs as usable as a UIs. That’s pretty much a requirement today for creating a great developer experience.”
Christian Nwamba
Christian Nwamba
Senior Developer Advocate @ Microsoft
“8base is a life-changing tool for developers. It's like Firebase but with GraphQL, relational data, flexibility and extensibility. I absolutely love it!”
Sky Winston
Sky Winston
Front-End Developer @ W+R Studios
“Speaking on behalf of front-end developers, what we don’t have is a way to easily get a back-end up and running. That’s why I’m so excited about 8base. It’s where I can go to do just that."
Sam Woolerton
Sam Woolerton
Analyst @ IT Partners Limited
" I detest DevOps, database migrations, and that sort of stuff. And literally, 8base handles all of that. So, it’s perfect for me. "

Ready to try 8base?

We're excited about helping you achieve amazing results.

industries

Saas &
Micro-Saas

Marketplaces &
Network-Centric Applications

Get Started
industries

Saas &
Micro-Saas

Marketplaces &
Network-Centric Applications

Get Started