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.

Authorization

Pass in the User Session Token in the Authorization HTTP header:

Authorization: Bearer {{USER_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 request access to QuilttGraphiQL, please contact support@quiltt.io.


AnchorSample Queries

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

Anchoraccounts

Get a list of the user’s Accounts.

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

Anchorprofile

Get information about the user’s profile.

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

AnchortransactionsConnection

Get a paginated list of the user’s Transactions.

query GetTransactions($filter: TransactionFilter) {
transactionsConnection(filter: $filter) {
edges {
node {
id
amount
description
date
metadata
}
}
}
}
variables {
"input": {
"date_gt": "2021-01-01"
}
}

AnchorSample Mutations

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.

AnchorprofileUpdate

Update the User’s profile.

mutation UpdateName($name: String) {
profileUpdate(input: { name: $name }) {
success
record {
id
name
}
errors {
message
path
}
}
}
variables {
"name": "Joe Exotic"
}

AnchorplaidItemCreate

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

mutation PlaidItemCreate($input: PlaidItemCreateInput!) {
plaidItemCreate(input: $input) {
success
record {
id
name
accounts {
id
name
}
}
errors {
code
message
type
}
}
}
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 PlaidItemDelete($input: PlaidItemDeleteInput!) {
plaidItemDelete(input: $input) {
success
record {
id
}
errors {
code
message
type
}
}
}
variables {
"input": { "id": "THE_ID_OF_YOUR_PLAID_ITEM" }
}