Skip to main content

GraphQL


AnchorOverview

GraphQL is the primary interface for interacting with a specific user’s data. If you’re new to GraphQL, please review our How to use GraphQL guide.

Queries should be performed via GET requests (POST is also supported) while Mutations require POST requests.

AnchorAuthorization

Pass in the Session Token in the Authorization HTTP header:

Authorization: Bearer {{SESSION_TOKEN}}

AnchorQuilttGraphiQL

Our interactive GraphQL Explorer gives you access to all the queries and mutations your Quiltt environment supports. Additionally, it ships with an interactive query builder and typed schema explorer.

To get access to QuilttGraphiQL, please contact support@quiltt.io.


AnchorQueries

GET
https://api.quiltt.io/v1/graphql
POST
https://api.quiltt.io/v1/graphql

Queries allow you to get data related to a user profile.

Below are several sample questies you can run. For the full list of available queries, please see QuilttGraphiQL.

Anchoraccounts

Get a list of the user’s Accounts.

query GetUserAccounts {
accounts {
id
name
balance {
current
available
}
lastFourDigits
status
metadata
}
}

Anchorprofile

Get information about the user’s profile.

query GetUserProfile {
profile {
id
name
phone
email
metadata
}
}

AnchortransactionsConnection

Get a paginated list of the user’s Transactions.

query GetUserTransactions($filter: TransactionFilter) {
transactionsConnection(filter: $filter) {
edges {
node {
id
amount
description
date
metadata
}
}
}
}

Variables

"filter": {
"date_gt": "2021-01-01"
}

AnchorMutations

POST
https://api.quiltt.io/v1/graphql

Mutations allow you to modify data related to a user profile.

The mutation field can return a success boolean, a record object that allows you to query for nested fields on the subject of the mutation, and an errors object for troubleshooting unsuccessful mutations.

Below are several sample mutations you can run. For the full list of available, please see QuilttGraphiQL.

AnchorprofileUpdate

Update the User’s profile.

mutation UpdateUserProfile($input: ProfileUpdateInput!) {
profileUpdate(input: $input) {
success
record {
id
name
email
metadata
}
errors {
message
path
}
}
}

Variables

"input": {
"name": "Joe Exotic",
"metadata" {
"favoriteAnimal": "Tiger"
}
}

AnchorplaidItemCreate

Create and persist a Plaid Item, passing in the result of a successful client-side Plaid Link submission.

mutation CreatePlaidItem($input: PlaidItemCreateInput!) {
plaidItemCreate(input: $input) {
success
record {
id
name
accounts {
id
name
}
}
errors {
code
message
}
}
}

Variables

"input": {
"metadata": "{{PLAID_LINK_METADATA}}",
"publicToken": "{{PLAID_LINK_PUBLIC_TOKEN}}"
}

AnchorplaidItemDelete

Delete a Plaid Item from Quiltt, which will also remove it from Plaid.

mutation DeletePlaidItem($input: PlaidItemDeleteInput!) {
plaidItemDelete(input: $input) {
success
record {
id
}
errors {
code
message
}
}
}

Variables

"input": {
"id": "THE_ID_OF_YOUR_PLAID_ITEM"
}