API
About GraphQL
GraphQL is a query language that enables you to define precisely the data you want.
Learn about the Pipeline GraphQL API, how to authenticate, and how to execute the GraphQL queries and mutations.
Getting started
Developer License
To access the API, you must have developer licenses for each account (individual or service) accessing the API.
Create a Service Account (Optional)
While optional, it is highly recommended that you create a dedicated service account for your team or department in your domain to access the API.
That way, the account accessing the API is not tied to any specific individual to ensure accuracy of the activity logs and prevent unexpected deactivation.
Note, 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:
A GraphQL type represents an object and the fields it has.
A GraphQL query retrieves type(s) from a server, similar to a GET request in REST.
A GraphQL mutation creates or modify type(s), similar to a POST, PUT, or DELETE request in REST.