API

Mar 26, 2021

About GraphQL

GraphQL is a query language that enables you to define precisely the data you want.

Learn more about GraphQL »

Learn about the Pipeline GraphQL API, how to authenticate, and how to execute the GraphQL queries and mutations.

Getting started

Create a Service Account

In order to access the Pipeline GraphQL API, you need to create a dedicated service account in your domain to access the API.

User accounts are NOT allowed access to the Pipeline GraphQL API to ensure integrity and accuracy of the activity logs.

Grant access to your Service Account

By default, your service account will not have any visibility to Pipeline data until you grant it permissions. You can grant permissions to your service account inside Pipeline by:

  • Adding it as a step owner in a flow
  • Adding it as a member of a Team
  • Adding it as a follow to an Ask

Get your OAuth Token and authenticate your API calls

Once you have set up your service account in Pipeline, contact our support team to validate your configuration and receive the OAuth Token for the service account.

Pipeline requires all API calls to be authenticated with an OAuth Token for the service account.

Connect to API endpoint

The API endpoint Url is based on your instance.

https://[yourinstance].pipelineapp.io/app/graphql/api/
Test your connectivity

Once you have your OAuth token, you can test your connectivity by using the standard me GraphQL query.

curl --request POST 'https://[yourinstance].pipelineapp.io/app/graphql/api/' 
--header 'Content-Type: application/json' 
--header 'Authorization: Bearer [token]' 
--data-raw '{
    "operationName": "MeQuery",
    "query": "query Me {
    	me {
            contactFirstName
            contactLastName
            contactEmail
    	}
    }",
    "variables": {}    
}'
{
  "data": {
    "me": {
      "contactFirstName": "Daniel",
      "contactLastName": "Payton",
      "contactEmail": "daniel.payton@company.com"
    }
  }
}

Next Steps

Build common use-cases

The vast majority of your calls will most likely be based on common use-cases. We've documented what they are and provided code samples for the GraphQL queries and mutations. Build out these common use-cases, and you'll have a great foundation for your integration.

Learn more about the common use-cases »

Learn GraphQL schema

The Pipeline API is based on the GraphQL schema, which has 3 main components: types (objects), queries, and mutations:

Types

A GraphQL type represents an object and the fields it has.

Learn more about the Pipeline API Types »

 Queries

A GraphQL query retrieves type(s) from a server, similar to a GET request in REST.

Learn more about the Pipeline API Queries »

 Mutations

A GraphQL mutation creates or modify type(s), similar to a POST, PUT, or DELETE request in REST.

Learn more about the Pipeline API Mutations »