Confido Legal GraphQL API API Reference

Welcome to the Confido Legal GraphQL API.

API Endpoints
sandbox:
https://api.sandbox.gravity-legal.com/v2

Addresses

Queries and mutations for working with addresses. Addresses show up on Clients and Contacts.

Add Address

Add an address.

(no description)

Example

Request Content-Types: application/json
Query
mutation addAddress($input: AddAddressInput!){
  addAddress(input: $input){
    id
    city
    line1
    line2
    state
    zip
  }
}
Variables
{
  "input": {
    "city": "string",
    "line1": "string",
    "line2": "string",
    "state": "string",
    "zip": "string"
  }
}
Try it now
200 OK

Successful operation

type
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "addAddress": {
      "id": "string",
      "city": "string",
      "line1": "string",
      "line2": "string",
      "state": "string",
      "zip": "string"
    }
  }
}

Update Address

Update an address.

(no description)

Example

Request Content-Types: application/json
Query
mutation updateAddress($input: UpdateAddressInput!){
  updateAddress(input: $input){
    id
    city
    line1
    line2
    state
    zip
  }
}
Variables
{
  "input": {
    "id": "object",
    "city": "string",
    "line1": "string",
    "line2": "string",
    "state": "string",
    "zip": "string"
  }
}
Try it now
200 OK

Successful operation

type
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateAddress": {
      "id": "string",
      "city": "string",
      "line1": "string",
      "line2": "string",
      "state": "string",
      "zip": "string"
    }
  }
}

Remove Address

Remove an address.

id:
string

(no description)

Example

Request Content-Types: application/json
Query
mutation removeAddress($id: String!){
  removeAddress(id: $id){
    id
    city
    line1
    line2
    state
    zip
  }
}
Variables
{
  "id": "string"
}
Try it now
200 OK

Successful operation

type
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "removeAddress": {
      "id": "string",
      "city": "string",
      "line1": "string",
      "line2": "string",
      "state": "string",
      "zip": "string"
    }
  }
}

BankAccount

Queries and mutations for working with bank accounts. Bank Accounts are found under the Firm.

Update Bank Account

Update a Bank Account.

(no description)

Example

Request Content-Types: application/json
Query
mutation updateBankAccount($input: UpdateBankAccountInput!){
  updateBankAccount(input: $input){
    id
    category
    isDefault
    lastFour
    nickname
  }
}
Variables
{
  "input": {
    "id": "object",
    "nickname": "string"
  }
}
Try it now
200 OK

Successful operation

Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateBankAccount": {
      "id": "string",
      "category": "string",
      "isDefault": "boolean",
      "lastFour": "string",
      "nickname": "string"
    }
  }
}

Clients

Queries and mutations for working with clients.

Fetch Client

Get an existing client.

externalId:
string

(no description)

id:
string

A unique uuidv4 value for this object.

Example

Request Content-Types: application/json
Query
query client($externalId: String, $id: String){
  client(externalId: $externalId, id: $id){
    id
    clientName
    createdOn
    email
    externalId
    firstName
    lastName
    latestActivity
    phone
    qbCustomerRef
    qbRealmId
    source
    surchargeEnabled
    updatedOn
  }
}
Variables
{
  "externalId": "string",
  "id": "string"
}
Try it now
200 OK

Successful operation

type
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "client": {
      "id": "string",
      "clientName": "string",
      "email": "string",
      "externalId": "string",
      "firstName": "string",
      "lastName": "string",
      "phone": "string",
      "qbCustomerRef": "string",
      "qbRealmId": "string",
      "source": "string",
      "surchargeEnabled": "boolean"
    }
  }
}

Add Client

Create a new client.

The input object must define the clientName and the firmId to be a valid execution.

Example

Request Content-Types: application/json
Query
mutation addClient($input: AddClientInput!){
  addClient(input: $input){
    id
    clientName
    createdOn
    email
    externalId
    firstName
    lastName
    latestActivity
    phone
    qbCustomerRef
    qbRealmId
    source
    surchargeEnabled
    updatedOn
  }
}
Variables
{
  "input": {
    "address": {
      "city": "string",
      "line1": "string",
      "line2": "string",
      "state": "string",
      "zip": "string"
    },
    "clientName": "string",
    "email": "string",
    "externalId": "string",
    "firmId": "string",
    "firstName": "string",
    "lastName": "string",
    "phone": "string",
    "primaryContact": {
      "address": {
        "city": "string",
        "line1": "string",
        "line2": "string",
        "state": "string",
        "zip": "string"
      },
      "email": "string",
      "firstName": "string",
      "lastName": "string",
      "phone": "string"
    },
    "qbCustomerRef": "string",
    "qbRealmId": "string",
    "surchargeEnabled": "boolean"
  }
}
Try it now
200 OK

Successful operation

type
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "addClient": {
      "id": "string",
      "clientName": "string",
      "email": "string",
      "externalId": "string",
      "firstName": "string",
      "lastName": "string",
      "phone": "string",
      "qbCustomerRef": "string",
      "qbRealmId": "string",
      "source": "string",
      "surchargeEnabled": "boolean"
    }
  }
}

Update a Client

Update an existing client.

The id must define a Client that can be found in our database.

Example

Request Content-Types: application/json
Query
mutation updateClient($input: UpdateClientInput!){
  updateClient(input: $input){
    id
    clientName
    createdOn
    email
    externalId
    firstName
    lastName
    latestActivity
    phone
    qbCustomerRef
    qbRealmId
    source
    surchargeEnabled
    updatedOn
  }
}
Variables
{
  "input": {
    "id": "object",
    "address": {
      "city": "string",
      "line1": "string",
      "line2": "string",
      "state": "string",
      "zip": "string"
    },
    "clientName": "string",
    "email": "string",
    "externalId": "string",
    "firstName": "string",
    "lastName": "string",
    "phone": "string",
    "primaryContactId": "object",
    "qbCustomerRef": "string",
    "qbRealmId": "string",
    "surchargeEnabled": "boolean"
  }
}
Try it now
200 OK

Successful operation

type
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateClient": {
      "id": "string",
      "clientName": "string",
      "email": "string",
      "externalId": "string",
      "firstName": "string",
      "lastName": "string",
      "phone": "string",
      "qbCustomerRef": "string",
      "qbRealmId": "string",
      "source": "string",
      "surchargeEnabled": "boolean"
    }
  }
}

Contacts

Queries and mutations for working with contacts.

Add Contact

Add a new contact for a client.

(no description)

Example

Request Content-Types: application/json
Query
mutation addContact($input: AddContactInput!){
  addContact(input: $input){
    id
    email
    firstName
    fullName
    lastName
    phone
  }
}
Variables
{
  "input": {
    "address": {
      "city": "string",
      "line1": "string",
      "line2": "string",
      "state": "string",
      "zip": "string"
    },
    "clientId": "object",
    "email": "string",
    "firstName": "string",
    "isPrimaryContact": "boolean",
    "lastName": "string",
    "phone": "string"
  }
}
Try it now
200 OK

Successful operation

type
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "addContact": {
      "id": "string",
      "email": "string",
      "firstName": "string",
      "fullName": "string",
      "lastName": "string",
      "phone": "string"
    }
  }
}

Remove Contact

Remove a contact.

(no description)

Example

Request Content-Types: application/json
Query
mutation removeContact($input: RemoveContactInput!){
  removeContact(input: $input){
    id
    email
    firstName
    fullName
    lastName
    phone
  }
}
Variables
{
  "input": {
    "contactId": "object"
  }
}
Try it now
200 OK

Successful operation

type
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "removeContact": {
      "id": "string",
      "email": "string",
      "firstName": "string",
      "fullName": "string",
      "lastName": "string",
      "phone": "string"
    }
  }
}

Update Contact

Update a contact.

(no description)

Example

Request Content-Types: application/json
Query
mutation updateContact($input: UpdateContactInput!){
  updateContact(input: $input){
    id
    email
    firstName
    fullName
    lastName
    phone
  }
}
Variables
{
  "input": {
    "id": "object",
    "address": {
      "city": "string",
      "line1": "string",
      "line2": "string",
      "state": "string",
      "zip": "string"
    },
    "email": "string",
    "firstName": "string",
    "isPrimaryContact": "boolean",
    "lastName": "string",
    "phone": "string"
  }
}
Try it now
200 OK

Successful operation

type
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateContact": {
      "id": "string",
      "email": "string",
      "firstName": "string",
      "fullName": "string",
      "lastName": "string",
      "phone": "string"
    }
  }
}

Firms

Queries and mutations for working with firms.

Get Firm

Get a single firm.

id:
string

A unique uuidv4 value for this object.

Example

Request Content-Types: application/json
Query
query firm($id: ID){
  firm(id: $id){
    id
    defaultPaymentMethods
    isAcceptingPayments
    name
    status
  }
}
Variables
{
  "id": "string"
}
Try it now
200 OK

Successful operation

type
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "firm": {
      "id": "string",
      "defaultPaymentMethods": [
        null
      ],
      "isAcceptingPayments": "boolean",
      "name": "string"
    }
  }
}

Matters

Queries and mutations for working with matters.

Fetch Matter

Get an existing matter

externalId:
string

(no description)

id:
string

A unique uuidv4 value for this object.

Example

Request Content-Types: application/json
Query
query matter($externalId: String, $id: String){
  matter(externalId: $externalId, id: $id){
    id
    externalId
    name
    status
  }
}
Variables
{
  "externalId": "string",
  "id": "string"
}
Try it now
200 OK

Successful operation

type
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "matter": {
      "id": "string",
      "externalId": "string",
      "name": "string",
      "status": "string"
    }
  }
}

Add Matter

Create a new matter

(no description)

Example

Request Content-Types: application/json
Query
mutation addMatter($input: AddMatterInput!){
  addMatter(input: $input){
    id
    externalId
    name
    status
  }
}
Variables
{
  "input": {
    "clientId": "object",
    "externalId": "string",
    "name": "string",
    "secondaryClientId": "object"
  }
}
Try it now
200 OK

Successful operation

type
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "addMatter": {
      "id": "string",
      "externalId": "string",
      "name": "string",
      "status": "string"
    }
  }
}

Update Matter

Updates a matter

(no description)

Example

Request Content-Types: application/json
Query
mutation updateMatter($input: UpdateMatterInput!){
  updateMatter(input: $input){
    id
    externalId
    name
    status
  }
}
Variables
{
  "input": {
    "id": "object",
    "externalId": "object",
    "name": "string"
  }
}
Try it now
200 OK

Successful operation

type
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateMatter": {
      "id": "string",
      "externalId": "string",
      "name": "string",
      "status": "string"
    }
  }
}

PaymentLinks

Queries and mutations for working with payment links.

Add PaymentLink

Add a new payment links.

(no description)

Example

Request Content-Types: application/json
Query
mutation addPaymentLink($input: AddPaymentLinkInput!){
  addPaymentLink(input: $input){
    id
    createdOn
    externalId
    memo
    paymentMethodsAllowed
    qbEnabled
    qbInvoiceRef
    qbRealmId
    sendReceipts
    status
    surchargeEnabled
    url
  }
}
Variables
{
  "input": {
    "amounts": [
      {
        "amount": "number",
        "bankAccountId": "string"
      }
    ],
    "clientId": "object",
    "externalId": "object",
    "matterId": "object",
    "memo": "string",
    "operating": "number",
    "paymentMethodsAllowed": [
      "string"
    ],
    "qbEnabled": "boolean",
    "sendReceipts": "boolean",
    "surchargeEnabled": "boolean",
    "trust": "number"
  }
}
Try it now
200 OK

Successful operation

Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "addPaymentLink": {
      "id": "string",
      "externalId": "string",
      "memo": "string",
      "paymentMethodsAllowed": [
        null
      ],
      "qbEnabled": "boolean",
      "qbInvoiceRef": "string",
      "qbRealmId": "string",
      "sendReceipts": "boolean",
      "status": "string",
      "surchargeEnabled": "boolean",
      "url": "string"
    }
  }
}

Remove PaymentLink

Remove a payment link.

(no description)

Example

Request Content-Types: application/json
Query
mutation removePaymentLink($input: RemovePaymentLinkInput!){
  removePaymentLink(input: $input){
    id
    createdOn
    externalId
    memo
    paymentMethodsAllowed
    qbEnabled
    qbInvoiceRef
    qbRealmId
    sendReceipts
    status
    surchargeEnabled
    url
  }
}
Variables
{
  "input": {
    "id": "object"
  }
}
Try it now
200 OK

Successful operation

Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "removePaymentLink": {
      "id": "string",
      "externalId": "string",
      "memo": "string",
      "paymentMethodsAllowed": [
        null
      ],
      "qbEnabled": "boolean",
      "qbInvoiceRef": "string",
      "qbRealmId": "string",
      "sendReceipts": "boolean",
      "status": "string",
      "surchargeEnabled": "boolean",
      "url": "string"
    }
  }
}

Update PaymentLink

Updates the payment link defined by id. Updating the Client also updates the corresponding balances for Matters and Clients associated with this Paylink.

(no description)

Example

Request Content-Types: application/json
Query
mutation updatePaymentLink($input: UpdatePaymentLinkInput!){
  updatePaymentLink(input: $input){
    id
    createdOn
    externalId
    memo
    paymentMethodsAllowed
    qbEnabled
    qbInvoiceRef
    qbRealmId
    sendReceipts
    status
    surchargeEnabled
    url
  }
}
Variables
{
  "input": {
    "id": "object",
    "amounts": [
      {
        "amount": "number",
        "bankAccountId": "string"
      }
    ],
    "clientId": "object",
    "externalId": "object",
    "matterId": "object",
    "memo": "string",
    "operating": "number",
    "paymentMethodsAllowed": [
      "string"
    ],
    "qbEnabled": "boolean",
    "qbInvoiceRef": "string",
    "qbRealmId": "string",
    "sendReceipts": "boolean",
    "trust": "number"
  }
}
Try it now
200 OK

Successful operation

Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updatePaymentLink": {
      "id": "string",
      "externalId": "string",
      "memo": "string",
      "paymentMethodsAllowed": [
        null
      ],
      "qbEnabled": "boolean",
      "qbInvoiceRef": "string",
      "qbRealmId": "string",
      "sendReceipts": "boolean",
      "status": "string",
      "surchargeEnabled": "boolean",
      "url": "string"
    }
  }
}

Payments

Queries and mutations for working with payments.

Fetch Payment

Get a single payment.

id:
string

A unique uuidv4 value for this object.

Example

Request Content-Types: application/json
Query
query payment($id: String!){
  payment(id: $id){
    id
    amount
    cardBrand
    createdOn
    latestActivity
    status
  }
}
Variables
{
  "id": "string"
}
Try it now
200 OK

Successful operation

type
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "payment": {
      "id": "string",
      "amount": "integer",
      "cardBrand": "string",
      "createdOn": "string",
      "latestActivity": "string"
    }
  }
}

StoredPaymentMethods

Queires and mutations for working with stored payment methods. A stored payment method allows you to collect card or bank account information that can be charged later.

Stored Payment Method Url

Returns a url that points to a hosted page where a new stored payment method can be created. This query requires a clientId. All stored payment methods created from this url will be associated with the given client.

clientId:
string

The id for the Client that you would like to associate the new card or bank account information with. This is the Client you will find the Stored Payment Method under.

Example

Request Content-Types: application/json
Query
query storedPaymentMethodUrl($clientId: String!){
  storedPaymentMethodUrl(clientId: $clientId){
    url
  }
}
Variables
{
  "clientId": "string"
}
Try it now
200 OK

Successful operation

Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "storedPaymentMethodUrl": {
      "url": "string"
    }
  }
}

Initiate Payment on Stored Payment Method

Initiates a payment on the stored payment method. The amount of the payment is defined through the amount, operating, or trust parameters. Only one can be defined. If operating or trust are defined the Firm's corresponding default Bank Account is used.

The object that defines how to execute the payment. The storedPaymentMethodId will found on the Client object after a user has input their card or bank account information at the Stored Payment Method url. Either amount, operating, or trust must be defined in Cents.

Example

Request Content-Types: application/json
Query
mutation initiateSPMPayment($input: SPMPaymentInput!){
  initiateSPMPayment(input: $input){
    id
    amount
    cardBrand
    createdOn
    latestActivity
    status
  }
}
Variables
{
  "input": {
    "amount": {
      "amount": "number",
      "bankAccountId": "string"
    },
    "emailForReceipt": "string",
    "matterId": "object",
    "operating": "number",
    "sendReceipt": "boolean",
    "storedPaymentMethodId": "object",
    "trust": "number"
  }
}
Try it now
200 OK

Successful operation

type
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "initiateSPMPayment": {
      "id": "string",
      "amount": "integer",
      "cardBrand": "string",
      "createdOn": "string",
      "latestActivity": "string"
    }
  }
}

Update Stored Payment Method

Updates the Stored Payment Method with new values, such as the nickname.

(no description)

Example

Request Content-Types: application/json
Query
mutation updateStoredPaymentMethod($input: UpdateStoredPaymentMethodInput!){
  updateStoredPaymentMethod(input: $input){
    id
    canReactivate
    cardBrand
    lastFour
    payerName
    nickname
    paymentMethod
    status
    type
  }
}
Variables
{
  "input": {
    "id": "object",
    "defaultEmail": "string",
    "nickname": "string"
  }
}
Try it now
200 OK

Successful operation

Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateStoredPaymentMethod": {
      "id": "string",
      "canReactivate": "boolean",
      "cardBrand": "string",
      "lastFour": "string",
      "payerName": "string",
      "nickname": "string",
      "paymentMethod": "string",
      "status": "string",
      "type": "string"
    }
  }
}

Subscriptions

A subscription is a series of payments that are executed based on schedule that is defined when the subscription is created. A subscription can have a stored payment method assigned on creation or after through the subscription url. If a subscription is created with a stored payment method assigned, it will immediately be in the 'active' status. If the subscription is created without a stored payment method, it will begin in the 'pending' status. It will then become active when a stored payment method is assigned through the subscription url. If a payment fails during the subscription, the subscription status will change to 'payment_failed'. At this time, a webhook will be sent out that the subscription has been updated (the status changed).

Fetch Subscription

Get a single subscription.

id:
string

(no description)

Example

Request Content-Types: application/json
Query
query subscription($id: String!){
  subscription(id: $id){
    id
    paymentMethods
    status
    surchargeEnabled
    url
  }
}
Variables
{
  "id": "string"
}
Try it now
200 OK

Successful operation

Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "subscription": {
      "id": "string",
      "paymentMethods": [
        null
      ],
      "status": "string",
      "surchargeEnabled": "boolean",
      "url": "string"
    }
  }
}

Add Subscription

Add a single subscription

(no description)

Example

Request Content-Types: application/json
Query
mutation addSubscription($input: AddSubscriptionInput!){
  addSubscription(input: $input){
    id
    paymentMethods
    status
    surchargeEnabled
    url
  }
}
Variables
{
  "input": {
    "amounts": [
      {
        "amount": "number",
        "bankAccountId": "string"
      }
    ],
    "clientId": "string",
    "matterId": "string",
    "paymentMethods": [
      "string"
    ],
    "operating": "number",
    "schedule": {
      "ends": {
        "amountPaid": "number",
        "never": "boolean",
        "on": "string",
        "payments": "number"
      },
      "frequency": {
        "biweekly": [
          "string"
        ],
        "monthly": [
          "number"
        ],
        "weekly": [
          "string"
        ],
        "yearly": [
          "string"
        ]
      }
    },
    "startDate": "string",
    "storedPaymentMethodId": "string",
    "trust": "number"
  }
}
Try it now
200 OK

Successful operation

Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "addSubscription": {
      "id": "string",
      "paymentMethods": [
        null
      ],
      "status": "string",
      "surchargeEnabled": "boolean",
      "url": "string"
    }
  }
}

Schema Definitions

AchProcessor: string

object
emergepay
object
emergepay_sandbox
object
epmock
object
vericheck
object
vcmock

AddAddressInput: object

Defines the input parameters for adding a new Address. This is used internally through adding other entities such as Clients and Contacts.

city:

(Optional) The city for this Address.

line1:

(Optional) The first line of the Address.

line2:

(Optional) The second line of the Address, if necessary.

state:

(Optional) The state for this Address.

zip:

(Optional) The zip for this Address.

Example
{
  "city": "string",
  "line1": "string",
  "line2": "string",
  "state": "string",
  "zip": "string"
}

AddAggregatePaymentLinkInput: object

externalId:
memo:
paymentLinkIds:
Example
{
  "externalId": "string",
  "memo": "string",
  "paymentLinkIds": [
    "string"
  ]
}

AddAmountInput: object

Defines the structure for adding an amount.

amount:
Int

(Required) Integer value in cents.

bankAccountId:

(Required) A uuidv4 id for the Bank Account to associate the amount with.

Example
{
  "amount": "number",
  "bankAccountId": "string"
}

AddClientInput: object

address:

(Optional) The address of the Client.

clientName:

(Required) The name of the Client. This should be the default display name.

email:

(Optional) The primary email address for contacting this Client.

externalId:

(Optional) An externalId for querying down the road.

firmId:

(Required) The Firm to associate this Client with.

firstName:

(Optional) The first name of the Client.

lastName:

(Optional) The last name of the Client.

phone:

(Optional) The primary phone number of the Client.

primaryContact:

(Optional) The primary contact to create and attach to this Client.

qbCustomerRef:
qbRealmId:
surchargeEnabled:

(Optional) Wether or not to default surcharging on payments for this Client. If undefined, defaults to the Firm's settings.

Example
{
  "address": {
    "city": "string",
    "line1": "string",
    "line2": "string",
    "state": "string",
    "zip": "string"
  },
  "clientName": "string",
  "email": "string",
  "externalId": "string",
  "firmId": "string",
  "firstName": "string",
  "lastName": "string",
  "phone": "string",
  "primaryContact": {
    "address": {
      "city": "string",
      "line1": "string",
      "line2": "string",
      "state": "string",
      "zip": "string"
    },
    "email": "string",
    "firstName": "string",
    "lastName": "string",
    "phone": "string"
  },
  "qbCustomerRef": "string",
  "qbRealmId": "string",
  "surchargeEnabled": "boolean"
}

AddContactInput: object

address:

(Optional) The address to associate with the Contact.

clientId:
ID

(Required) The uuidv4 id for the Client to associate the Contact with.

email:

(Optional) The email for this Contact.

firstName:

(Required) The first name of the Contact.

isPrimaryContact:

(Optional) Wether or not the Contact is a primary Contact. If null, defaults to false. When true, updates the Clients primary Contact to this Contact.

lastName:

(Optional) The last name of the Contact.

phone:

(Optional) The phone number of the Contact.

Example
{
  "address": {
    "city": "string",
    "line1": "string",
    "line2": "string",
    "state": "string",
    "zip": "string"
  },
  "clientId": "object",
  "email": "string",
  "firstName": "string",
  "isPrimaryContact": "boolean",
  "lastName": "string",
  "phone": "string"
}

AddMatterInput: object

Defines the input object for adding a Matter. The Client and secondary Client can not be changed in the future so be sure to assign them correctly.

clientId:
ID

A unique uuidv4 value for this object.

externalId:

(Optional) An externalId for querying down the road.

name:

A descriptive name for the Matter.

secondaryClientId:
ID

(Optional) A secondary Client to associate with the Matter.

Example
{
  "clientId": "object",
  "externalId": "string",
  "name": "string",
  "secondaryClientId": "object"
}

AddPaymentLinkInput: object

amounts:
clientId:
ID
externalId:
ID
matterId:
ID
memo:
operating:
Int
paymentMethodsAllowed:
qbEnabled:
sendReceipts:
surchargeEnabled:
trust:
Int
Example
{
  "amounts": [
    {
      "amount": "number",
      "bankAccountId": "string"
    }
  ],
  "clientId": "object",
  "externalId": "object",
  "matterId": "object",
  "memo": "string",
  "operating": "number",
  "paymentMethodsAllowed": [
    "string"
  ],
  "qbEnabled": "boolean",
  "sendReceipts": "boolean",
  "surchargeEnabled": "boolean",
  "trust": "number"
}

AddPrimaryContactInput: object

address:
email:
firstName:
lastName:
phone:
Example
{
  "address": {
    "city": "string",
    "line1": "string",
    "line2": "string",
    "state": "string",
    "zip": "string"
  },
  "email": "string",
  "firstName": "string",
  "lastName": "string",
  "phone": "string"
}

AddScheduleInput: object

ends:

An object that defines when the subscription ends. This object should contain one (and only one) of the following keys: 'amountPaid', 'never', 'on', or 'payments'.

When the subscription ends is updated, the original termination type can not be changed. For example, if the subscription ends was 'amountPaid', you can not update the ends to 'never' or 'on'.

frequency:

The frequency of the subscription. This object should contain one (and only one) of the following keys: 'biweekly', 'monthly', 'weekly', or 'yearly'.

Example
{
  "ends": {
    "amountPaid": "number",
    "never": "boolean",
    "on": "string",
    "payments": "number"
  },
  "frequency": {
    "biweekly": [
      "string"
    ],
    "monthly": [
      "number"
    ],
    "weekly": [
      "string"
    ],
    "yearly": [
      "string"
    ]
  }
}

AddSubscriptionInput: object

amounts:

(Optional) A list of one amount object. This represents the amount that will be charged on each billing cycle. Subscriptions can only have a single bank account/amount at this time.

If this field is provided, operating and trust must be omitted.

clientId:

The id of a Client to associate the subscription with.

matterId:

(Optional) The id of a Matter to associate the subscription with.

paymentMethods:

(Optional) The payment methods to allow a client to input when activating the subscription.

If this is omitted, the default firm payment methods will be used.

operating:
Int

(Optional) The amount in cents to charge the client on each billing cycle. The amount will be deposited into the firm's default operating account.

If this field is provided, amounts and trust must be omitted.

schedule:

An object defining the schedule of the subscription. When the subscription charges the client and when the subscription is considered fulfilled.

startDate:

The date in which the first subscription charge will be made. This will be a string value of the form 'YYYY-MM-DD'.

storedPaymentMethodId:

(Optional) The id of a stored payment method to set on the subscription. If this is provided, the status of the subscription will be 'active' immediately.

If this is omitted, the subscription url that is returned should be used to collect the payment method from a firm's client.

trust:
Int

(Optional) The amount in cents to charge the client on each billing cycle. The amount will be deposited into the firm's default trust account.

If this field is provided, amounts and operating must be omitted.

Example
{
  "amounts": [
    {
      "amount": "number",
      "bankAccountId": "string"
    }
  ],
  "clientId": "string",
  "matterId": "string",
  "paymentMethods": [
    "string"
  ],
  "operating": "number",
  "schedule": {
    "ends": {
      "amountPaid": "number",
      "never": "boolean",
      "on": "string",
      "payments": "number"
    },
    "frequency": {
      "biweekly": [
        "string"
      ],
      "monthly": [
        "number"
      ],
      "weekly": [
        "string"
      ],
      "yearly": [
        "string"
      ]
    }
  },
  "startDate": "string",
  "storedPaymentMethodId": "string",
  "trust": "number"
}

Address: object

(FROZEN) An Address is in various entities (Client, Contact, etc.) to define where the entity is located.

id:
object

A unique uuidv4 value for this object.

return:
ID
arguments:
object
city:
object

(Nullable) The city for this Address.

return:
arguments:
object
line1:
object

(Nullable) The first line for this Address.

return:
arguments:
object
line2:
object

(Nullable) The second line for this Address.

return:
arguments:
object
state:
object

(Nullable) The state for this Address.

return:
arguments:
object
zip:
object

(Nullable) The zip code for this Address.

return:
arguments:
object
Example
{
  "id": {
    "return": "object",
    "arguments": {}
  },
  "city": {
    "return": "string",
    "arguments": {}
  },
  "line1": {
    "return": "string",
    "arguments": {}
  },
  "line2": {
    "return": "string",
    "arguments": {}
  },
  "state": {
    "return": "string",
    "arguments": {}
  },
  "zip": {
    "return": "string",
    "arguments": {}
  }
}

AggregatePaymentLinkConnection: object

edges:
object
return:
arguments:
object
pageInfo:
object
return:
arguments:
object
Example
{
  "edges": {
    "return": [
      {
        "cursor": {
          "return": "string",
          "arguments": {}
        },
        "node": {
          "return": {
            "id": {
              "return": "object",
              "arguments": {}
            },
            "balance": {
              "return": {
                "operatingOutstanding": {
                  "return": "number",
                  "arguments": {}
                },
                "operatingPaid": {
                  "return": "number",
                  "arguments": {}
                },
                "totalOutstanding": {
                  "return": "number",
                  "arguments": {}
                },
                "totalPaid": {
                  "return": "number",
                  "arguments": {}
                },
                "trustOutstanding": {
                  "return": "number",
                  "arguments": {}
                },
                "trustPaid": {
                  "return": "number",
                  "arguments": {}
                }
              },
              "arguments": {}
            },
            "client": {
              "return": {
                "id": {
                  "return": "object",
                  "arguments": {}
                },
                "address": {
                  "return": {
                    "id": {
                      "return": "object",
                      "arguments": {}
                    },
                    "city": {
                      "return": "string",
                      "arguments": {}
                    },
                    "line1": {
                      "return": "string",
                      "arguments": {}
                    },
                    "line2": {
                      "return": "string",
                      "arguments": {}
                    },
                    "state": {
                      "return": "string",
                      "arguments": {}
                    },
                    "zip": {
                      "return": "string",
                      "arguments": {}
                    }
                  },
                  "arguments": {}
                },
                "aggregatePaymentLinks": {
                  "return": {
                    "edges": {
                      "return": [
                        {
                          "cursor": {
                            "return": "string",
                            "arguments": {}
                          },
                          "node": {
                            "return": {
                              "id": {
                                "return": "object",
                                "arguments": {}
                              },
                              "balance": {
                                "return": {}
                              }
                            }
                          }
                        }
                      ]
                    }
                  }
                }
              }
            }
          }
        }
      }
    ]
  }
}

AggregatePaymentLinkEdge: object

cursor:
object
return:
arguments:
object
node:
object
return:
arguments:
object
Example
{
  "cursor": {
    "return": "string",
    "arguments": {}
  },
  "node": {
    "return": {
      "id": {
        "return": "object",
        "arguments": {}
      },
      "balance": {
        "return": {
          "operatingOutstanding": {
            "return": "number",
            "arguments": {}
          },
          "operatingPaid": {
            "return": "number",
            "arguments": {}
          },
          "totalOutstanding": {
            "return": "number",
            "arguments": {}
          },
          "totalPaid": {
            "return": "number",
            "arguments": {}
          },
          "trustOutstanding": {
            "return": "number",
            "arguments": {}
          },
          "trustPaid": {
            "return": "number",
            "arguments": {}
          }
        },
        "arguments": {}
      },
      "client": {
        "return": {
          "id": {
            "return": "object",
            "arguments": {}
          },
          "address": {
            "return": {
              "id": {
                "return": "object",
                "arguments": {}
              },
              "city": {
                "return": "string",
                "arguments": {}
              },
              "line1": {
                "return": "string",
                "arguments": {}
              },
              "line2": {
                "return": "string",
                "arguments": {}
              },
              "state": {
                "return": "string",
                "arguments": {}
              },
              "zip": {
                "return": "string",
                "arguments": {}
              }
            },
            "arguments": {}
          },
          "aggregatePaymentLinks": {
            "return": {
              "edges": {
                "return": [
                  {
                    "cursor": {
                      "return": "string",
                      "arguments": {}
                    },
                    "node": {
                      "return": {
                        "id": {
                          "return": "object",
                          "arguments": {}
                        },
                        "balance": {
                          "return": {
                            "operatingOutstanding": {
                              "return": "number",
                              "arguments": {}
                            }
                          }
                        }
                      }
                    }
                  }
                ]
              }
            }
          }
        }
      }
    }
  }
}

Amount: object

(FROZEN) Defines the amount object used commonly when referring to charging a specific Bank Account.

id:
object

A unique uuidv4 value for this object.

return:
ID
arguments:
object
amount:
object

Integer value in cents.

return:
Int
arguments:
object
bankAccount:
object

A uuidv4 id for the Bank Account to associate the amount with.

return:
arguments:
object
Example
{
  "id": {
    "return": "object",
    "arguments": {}
  },
  "amount": {
    "return": "number",
    "arguments": {}
  },
  "bankAccount": {
    "return": {
      "id": {
        "return": "object",
        "arguments": {}
      },
      "category": {
        "return": "string",
        "arguments": {}
      },
      "isDefault": {
        "return": "boolean",
        "arguments": {}
      },
      "lastFour": {
        "return": "string",
        "arguments": {}
      },
      "nickname": {
        "return": "string",
        "arguments": {}
      }
    },
    "arguments": {}
  }
}

Balance: object

(FROZEN) Defines payment metrics for an entity. Used to look at the historical and current state for a specific entity (Client, Matter, etc.). A balance will always be attached to another entity and describes the data of that parent entity.

operatingOutstanding:
object

The total outstanding amount in cents for all operating Bank Accounts for the parent entity.

return:
Int
arguments:
object
operatingPaid:
object

The total amount paid in cents to all operating Bank Accounts for the parent entity.

return:
Int
arguments:
object
totalOutstanding:
object

The total outstanding amount in cents for all Bank Accounts for the parent entity.

return:
Int
arguments:
object
totalPaid:
object

The total amount paid in cents for all Bank Accounts for the parent entity.

return:
Int
arguments:
object
trustOutstanding:
object

The total outstanding amount in cents for all trust Bank Accounts for the parent entity.

return:
Int
arguments:
object
trustPaid:
object

The total amount paid in cents for all Bank Accounts for the parent entity.

return:
Int
arguments:
object
Example
{
  "operatingOutstanding": {
    "return": "number",
    "arguments": {}
  },
  "operatingPaid": {
    "return": "number",
    "arguments": {}
  },
  "totalOutstanding": {
    "return": "number",
    "arguments": {}
  },
  "totalPaid": {
    "return": "number",
    "arguments": {}
  },
  "trustOutstanding": {
    "return": "number",
    "arguments": {}
  },
  "trustPaid": {
    "return": "number",
    "arguments": {}
  }
}

BankAccount: object

(FROZEN) Defines a single bank account for the corresponding Firm.

id:
object

A unique uuidv4 value for this object.

return:
ID
arguments:
object
category:
object

The category of the bank account. Either 'operating' or 'trust'.

return:
arguments:
object
isDefault:
object

Indicates if the BankAccount is the default for it's category.

return:
arguments:
object
lastFour:
object

The last four digits of the bank account. Example: '1234'.

return:
arguments:
object
nickname:
object

The nickname of this bank account normally set by the Firm.

return:
arguments:
object
Example
{
  "id": {
    "return": "object",
    "arguments": {}
  },
  "category": {
    "return": "string",
    "arguments": {}
  },
  "isDefault": {
    "return": "boolean",
    "arguments": {}
  },
  "lastFour": {
    "return": "string",
    "arguments": {}
  },
  "nickname": {
    "return": "string",
    "arguments": {}
  }
}

Boolean: boolean

The Boolean scalar type represents true or false.

Example
boolean

CancelSubscriptionInput: object

subscriptionId:
Example
{
  "subscriptionId": "string"
}

Client: object

id:
object

A unique uuidv4 value for this object.

return:
ID
arguments:
object
address:
object

(Nullable) The address of this Client.

return:
arguments:
object
aggregatePaymentLinks:
object
return:
arguments:
object
after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

balance:
object

The balance associated with this Client object. All values in Cents.

return:
arguments:
object
clientName:
object

The name of the Client. This is the main display name for the Client.

return:
arguments:
object
contacts:
object

A connection containing all the Contacts associated with this Client. The queries for Clients enable paging through all Clients.

return:
arguments:
object
after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

createdOn:
object

A Date object representing when this Client was created.

return:
arguments:
object
email:
object

(Nullable) The primary email for contacting this Client.

return:
arguments:
object
externalId:
object

(Nullable) An externalId for integration partners to set and query with.

return:
arguments:
object
firm:
object

The Firm associated with this Client.

return:
arguments:
object
firstName:
object

(Nullable) The first name of the Client.

return:
arguments:
object
lastName:
object

(Nullable) The last name of the Client.

return:
arguments:
object
latestActivity:
object

A Date object representing the last time this Client was active.

return:
arguments:
object
matters:
object

A connection of the matters associated with this client.

return:
arguments:
object
after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

paymentLinks:
object

A connection of the payment links associated with this client.

return:
arguments:
object
afterDate:

The createdOn date to grab Payment Link objects after.

after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

payments:
object

A connection of the payments associated with this client.

return:
arguments:
object
afterDate:

The createdOn date to grab Payment objects after.

after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

phone:
object

(Nullable) The phone number of the Client as a string.

return:
arguments:
object
primaryContact:
object

(Nullable) The primary Contact for this Client.

return:
arguments:
object
qbCustomerRef:
object
return:
arguments:
object
qbRealmId:
object
return:
arguments:
object
source:
object

(Nullable) The original source of the Client. If null, it was created through the Confido Legal UI.

return:
arguments:
object
storedPaymentMethods:
object

A connection of all Stored Payment Methods associated with this Client.

return:
arguments:
object
after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

subscriptions:
object
return:
arguments:
object
after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

surchargeEnabled:
object

A boolean representing whether payments made by this Client (Payment Links, etc.) are surcharged for credit cards by default.

return:
arguments:
object
transactions:
object

A connection of all Transactions associated with this Client. You can also specify a timestamp for afterDate to gather all Transactions after that timestamp.

return:
arguments:
object
afterDate:

The createdOn date to grab Transaction objects after.

after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

updatedOn:
object

A Date object representing the last time this Client was updated.

return:
arguments:
object
Example
{
  "id": {
    "return": "object",
    "arguments": {}
  },
  "address": {
    "return": {
      "id": {
        "return": "object",
        "arguments": {}
      },
      "city": {
        "return": "string",
        "arguments": {}
      },
      "line1": {
        "return": "string",
        "arguments": {}
      },
      "line2": {
        "return": "string",
        "arguments": {}
      },
      "state": {
        "return": "string",
        "arguments": {}
      },
      "zip": {
        "return": "string",
        "arguments": {}
      }
    },
    "arguments": {}
  },
  "aggregatePaymentLinks": {
    "return": {
      "edges": {
        "return": [
          {
            "cursor": {
              "return": "string",
              "arguments": {}
            },
            "node": {
              "return": {
                "id": {
                  "return": "object",
                  "arguments": {}
                },
                "balance": {
                  "return": {
                    "operatingOutstanding": {
                      "return": "number",
                      "arguments": {}
                    },
                    "operatingPaid": {
                      "return": "number",
                      "arguments": {}
                    },
                    "totalOutstanding": {
                      "return": "number",
                      "arguments": {}
                    },
                    "totalPaid": {
                      "return": "number",
                      "arguments": {}
                    },
                    "trustOutstanding": {
                      "return": "number",
                      "arguments": {}
                    },
                    "trustPaid": {
                      "return": "number",
                      "arguments": {}
                    }
                  },
                  "arguments": {}
                },
                "client": {
                  "return": {
                    "id": {
                      "return": "object",
                      "arguments": {}
                    },
                    "address": {
                      "return": {
                        "id": {
                          "return": "object",
                          "arguments": {}
                        },
                        "city": {
                          "return": "string",
                          "arguments": {}
                        },
                        "line1": {
                          "return": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        ]
      }
    }
  }
}

ClientConnection: object

edges:
object
return:
arguments:
object
pageInfo:
object
return:
arguments:
object
Example
{
  "edges": {
    "return": [
      {
        "cursor": {
          "return": "string",
          "arguments": {}
        },
        "node": {
          "return": {
            "id": {
              "return": "object",
              "arguments": {}
            },
            "address": {
              "return": {
                "id": {
                  "return": "object",
                  "arguments": {}
                },
                "city": {
                  "return": "string",
                  "arguments": {}
                },
                "line1": {
                  "return": "string",
                  "arguments": {}
                },
                "line2": {
                  "return": "string",
                  "arguments": {}
                },
                "state": {
                  "return": "string",
                  "arguments": {}
                },
                "zip": {
                  "return": "string",
                  "arguments": {}
                }
              },
              "arguments": {}
            },
            "aggregatePaymentLinks": {
              "return": {
                "edges": {
                  "return": [
                    {
                      "cursor": {
                        "return": "string",
                        "arguments": {}
                      },
                      "node": {
                        "return": {
                          "id": {
                            "return": "object",
                            "arguments": {}
                          },
                          "balance": {
                            "return": {
                              "operatingOutstanding": {
                                "return": "number",
                                "arguments": {}
                              },
                              "operatingPaid": {
                                "return": "number",
                                "arguments": {}
                              },
                              "totalOutstanding": {
                                "return": "number",
                                "arguments": {}
                              },
                              "totalPaid": {
                                "return": "number",
                                "arguments": {}
                              },
                              "trustOutstanding": {
                                "return": "number",
                                "arguments": {}
                              },
                              "trustPaid": {
                                "return": "number",
                                "arguments": {}
                              }
                            },
                            "arguments": {}
                          },
                          "client": {
                            "return": {
                              "id": {
                                "return": "object",
                                "arguments": {}
                              },
                              "address": {
                                "return": {}
                              }
                            }
                          }
                        }
                      }
                    }
                  ]
                }
              }
            }
          }
        }
      }
    ]
  }
}

ClientEdge: object

cursor:
object
return:
arguments:
object
node:
object
return:
arguments:
object
Example
{
  "cursor": {
    "return": "string",
    "arguments": {}
  },
  "node": {
    "return": {
      "id": {
        "return": "object",
        "arguments": {}
      },
      "address": {
        "return": {
          "id": {
            "return": "object",
            "arguments": {}
          },
          "city": {
            "return": "string",
            "arguments": {}
          },
          "line1": {
            "return": "string",
            "arguments": {}
          },
          "line2": {
            "return": "string",
            "arguments": {}
          },
          "state": {
            "return": "string",
            "arguments": {}
          },
          "zip": {
            "return": "string",
            "arguments": {}
          }
        },
        "arguments": {}
      },
      "aggregatePaymentLinks": {
        "return": {
          "edges": {
            "return": [
              {
                "cursor": {
                  "return": "string",
                  "arguments": {}
                },
                "node": {
                  "return": {
                    "id": {
                      "return": "object",
                      "arguments": {}
                    },
                    "balance": {
                      "return": {
                        "operatingOutstanding": {
                          "return": "number",
                          "arguments": {}
                        },
                        "operatingPaid": {
                          "return": "number",
                          "arguments": {}
                        },
                        "totalOutstanding": {
                          "return": "number",
                          "arguments": {}
                        },
                        "totalPaid": {
                          "return": "number",
                          "arguments": {}
                        },
                        "trustOutstanding": {
                          "return": "number",
                          "arguments": {}
                        },
                        "trustPaid": {
                          "return": "number",
                          "arguments": {}
                        }
                      },
                      "arguments": {}
                    },
                    "client": {
                      "return": {
                        "id": {
                          "return": "object",
                          "arguments": {}
                        },
                        "address": {
                          "return": {
                            "id": {
                              "return": "object",
                              "arguments": {}
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            ]
          }
        }
      }
    }
  }
}

CompleteSavePaymentMethodSessionInput: object

accountType:
clientId:
payerEmail:
payerName:
payerZip:
paymentMethod:
savePaymentMethodToken:
Example
{
  "accountType": "string",
  "clientId": "string",
  "payerEmail": "string",
  "payerName": "string",
  "payerZip": "string",
  "paymentMethod": "string",
  "savePaymentMethodToken": "string"
}

Contact: object

(FROZEN) A Contact represents a single point of contact for a Client. A Client can have multiple Contacts but only one primary Contact.

id:
object

A unique uuidv4 value for this object.

return:
ID
arguments:
object
address:
object

(Nullable) The address associated with this Contact.

return:
arguments:
object
email:
object

(Nullable) The email associated with this Contact.

return:
arguments:
object
firstName:
object

The first name of this Contact.

return:
arguments:
object
fullName:
object

The full name (firstName + ' ' + lastName) of this Contact.

return:
arguments:
object
lastName:
object

(Nullable) The last name of this Contact.

return:
arguments:
object
phone:
object

(Nullable) The phone number of this Contact.

return:
arguments:
object
Example
{
  "id": {
    "return": "object",
    "arguments": {}
  },
  "address": {
    "return": {
      "id": {
        "return": "object",
        "arguments": {}
      },
      "city": {
        "return": "string",
        "arguments": {}
      },
      "line1": {
        "return": "string",
        "arguments": {}
      },
      "line2": {
        "return": "string",
        "arguments": {}
      },
      "state": {
        "return": "string",
        "arguments": {}
      },
      "zip": {
        "return": "string",
        "arguments": {}
      }
    },
    "arguments": {}
  },
  "email": {
    "return": "string",
    "arguments": {}
  },
  "firstName": {
    "return": "string",
    "arguments": {}
  },
  "fullName": {
    "return": "string",
    "arguments": {}
  },
  "lastName": {
    "return": "string",
    "arguments": {}
  },
  "phone": {
    "return": "string",
    "arguments": {}
  }
}

ContactConnection: object

edges:
object
return:
arguments:
object
pageInfo:
object
return:
arguments:
object
Example
{
  "edges": {
    "return": [
      {
        "cursor": {
          "return": "string",
          "arguments": {}
        },
        "node": {
          "return": {
            "id": {
              "return": "object",
              "arguments": {}
            },
            "address": {
              "return": {
                "id": {
                  "return": "object",
                  "arguments": {}
                },
                "city": {
                  "return": "string",
                  "arguments": {}
                },
                "line1": {
                  "return": "string",
                  "arguments": {}
                },
                "line2": {
                  "return": "string",
                  "arguments": {}
                },
                "state": {
                  "return": "string",
                  "arguments": {}
                },
                "zip": {
                  "return": "string",
                  "arguments": {}
                }
              },
              "arguments": {}
            },
            "email": {
              "return": "string",
              "arguments": {}
            },
            "firstName": {
              "return": "string",
              "arguments": {}
            },
            "fullName": {
              "return": "string",
              "arguments": {}
            },
            "lastName": {
              "return": "string",
              "arguments": {}
            },
            "phone": {
              "return": "string",
              "arguments": {}
            }
          },
          "arguments": {}
        }
      }
    ],
    "arguments": {}
  },
  "pageInfo": {
    "return": {
      "endCursor": {
        "return": "object",
        "arguments": {}
      },
      "hasNextPage": {
        "return": "boolean",
        "arguments": {}
      }
    },
    "arguments": {}
  }
}

ContactEdge: object

cursor:
object
return:
arguments:
object
node:
object
return:
arguments:
object
Example
{
  "cursor": {
    "return": "string",
    "arguments": {}
  },
  "node": {
    "return": {
      "id": {
        "return": "object",
        "arguments": {}
      },
      "address": {
        "return": {
          "id": {
            "return": "object",
            "arguments": {}
          },
          "city": {
            "return": "string",
            "arguments": {}
          },
          "line1": {
            "return": "string",
            "arguments": {}
          },
          "line2": {
            "return": "string",
            "arguments": {}
          },
          "state": {
            "return": "string",
            "arguments": {}
          },
          "zip": {
            "return": "string",
            "arguments": {}
          }
        },
        "arguments": {}
      },
      "email": {
        "return": "string",
        "arguments": {}
      },
      "firstName": {
        "return": "string",
        "arguments": {}
      },
      "fullName": {
        "return": "string",
        "arguments": {}
      },
      "lastName": {
        "return": "string",
        "arguments": {}
      },
      "phone": {
        "return": "string",
        "arguments": {}
      }
    },
    "arguments": {}
  }
}

CreateFirmInput: object

mockOnboarding:
name:
Example
{
  "mockOnboarding": "boolean",
  "name": "string"
}

CreateFirmResult: object

id:
object

A unique uuidv4 value for this object.

return:
ID
arguments:
object
aggregatePaymentLinks:
object
return:
arguments:
object
after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

bankAccounts:
object
return:
arguments:
object
clients:
object
return:
arguments:
object
after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

defaultPaymentMethods:
object
return:
arguments:
object
isAcceptingPayments:
object
return:
arguments:
object
matters:
object
return:
arguments:
object
externalIds:
ID

An array of the external ids for matters to return

clientId:
ID
after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

name:
object
return:
arguments:
object
partner:
object
return:
arguments:
object
paymentLinks:
object
return:
arguments:
object
after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

payments:
object
return:
arguments:
object
updatedAfter:

List the Payments updated after this Date.

afterDate:

The createdOn date to grab Payments objects after.

after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

settings:
object
return:
arguments:
object
status:
object
return:
arguments:
object
storedPaymentMethods:
object
return:
arguments:
object
after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

subscriptions:
object
return:
arguments:
object
after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

apiToken:
object
return:
arguments:
object
onboardingToken:
object
return:
arguments:
object
signUpLink:
object

One-time-use link that expires after 20 min.

return:
arguments:
object
Example
{
  "id": {
    "return": "object",
    "arguments": {}
  },
  "aggregatePaymentLinks": {
    "return": {
      "edges": {
        "return": [
          {
            "cursor": {
              "return": "string",
              "arguments": {}
            },
            "node": {
              "return": {
                "id": {
                  "return": "object",
                  "arguments": {}
                },
                "balance": {
                  "return": {
                    "operatingOutstanding": {
                      "return": "number",
                      "arguments": {}
                    },
                    "operatingPaid": {
                      "return": "number",
                      "arguments": {}
                    },
                    "totalOutstanding": {
                      "return": "number",
                      "arguments": {}
                    },
                    "totalPaid": {
                      "return": "number",
                      "arguments": {}
                    },
                    "trustOutstanding": {
                      "return": "number",
                      "arguments": {}
                    },
                    "trustPaid": {
                      "return": "number",
                      "arguments": {}
                    }
                  },
                  "arguments": {}
                },
                "client": {
                  "return": {
                    "id": {
                      "return": "object",
                      "arguments": {}
                    },
                    "address": {
                      "return": {
                        "id": {
                          "return": "object",
                          "arguments": {}
                        },
                        "city": {
                          "return": "string",
                          "arguments": {}
                        },
                        "line1": {
                          "return": "string",
                          "arguments": {}
                        },
                        "line2": {
                          "return": "string",
                          "arguments": {}
                        },
                        "state": {
                          "return": "string",
                          "arguments": {}
                        },
                        "zip": {
                          "return": "string",
                          "arguments": {}
                        }
                      },
                      "arguments": {}
                    },
                    "aggregatePaymentLinks": {
                      "return": {
                        "edges": {
                          "return": [
                            {
                              "cursor": {
                                "return": "string",
                                "arguments": {}
                              },
                              "node": {
                                "return": {}
                              }
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        ]
      }
    }
  }
}

CreatePaymentTokenInput: object

bankAccountId:

The id of the Bank Account to deposit a one time payment into.

paymentLinkId:

The id of the Payment Link to assign a payment to.

Example
{
  "bankAccountId": "string",
  "paymentLinkId": "string"
}

CreatePaymentTokenResult: object

paymentToken:
object
return:
arguments:
object
Example
{
  "paymentToken": {
    "return": "string",
    "arguments": {}
  }
}

CreateSavePaymentMethodTokenInput: object

clientId:
Example
{
  "clientId": "string"
}

CreateSavePaymentMethodTokenResult: object

savePaymentMethodToken:
object
return:
arguments:
object
Example
{
  "savePaymentMethodToken": {
    "return": "string",
    "arguments": {}
  }
}

CreditCardProcessor: string

object
emergepay
object
emergepay_sandbox
object
epmock

DeactivateStoredPaymentMethodInput: object

id:
Example
{
  "id": "string"
}

DeleteResult: object

id:
object
return:
arguments:
object
Example
{
  "id": {
    "return": "string",
    "arguments": {}
  }
}

Firm: object

The Firm object is the root entity for a law Firm. The Firm Settings indicate important settings such as whether or not the Firm can enabled surcharging, ach, etc.

id:
object

A unique uuidv4 value for this object.

return:
ID
arguments:
object
aggregatePaymentLinks:
object
return:
arguments:
object
after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

bankAccounts:
object
return:
arguments:
object
clients:
object
return:
arguments:
object
after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

defaultPaymentMethods:
object
return:
arguments:
object
isAcceptingPayments:
object
return:
arguments:
object
matters:
object
return:
arguments:
object
externalIds:
ID

An array of the external ids for matters to return

clientId:
ID
after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

name:
object
return:
arguments:
object
partner:
object
return:
arguments:
object
paymentLinks:
object
return:
arguments:
object
after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

payments:
object
return:
arguments:
object
updatedAfter:

List the Payments updated after this Date.

afterDate:

The createdOn date to grab Payments objects after.

after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

settings:
object
return:
arguments:
object
status:
object
return:
arguments:
object
storedPaymentMethods:
object
return:
arguments:
object
after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

subscriptions:
object
return:
arguments:
object
after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

Example
{
  "id": {
    "return": "object",
    "arguments": {}
  },
  "aggregatePaymentLinks": {
    "return": {
      "edges": {
        "return": [
          {
            "cursor": {
              "return": "string",
              "arguments": {}
            },
            "node": {
              "return": {
                "id": {
                  "return": "object",
                  "arguments": {}
                },
                "balance": {
                  "return": {
                    "operatingOutstanding": {
                      "return": "number",
                      "arguments": {}
                    },
                    "operatingPaid": {
                      "return": "number",
                      "arguments": {}
                    },
                    "totalOutstanding": {
                      "return": "number",
                      "arguments": {}
                    },
                    "totalPaid": {
                      "return": "number",
                      "arguments": {}
                    },
                    "trustOutstanding": {
                      "return": "number",
                      "arguments": {}
                    },
                    "trustPaid": {
                      "return": "number",
                      "arguments": {}
                    }
                  },
                  "arguments": {}
                },
                "client": {
                  "return": {
                    "id": {
                      "return": "object",
                      "arguments": {}
                    },
                    "address": {
                      "return": {
                        "id": {
                          "return": "object",
                          "arguments": {}
                        },
                        "city": {
                          "return": "string",
                          "arguments": {}
                        },
                        "line1": {
                          "return": "string",
                          "arguments": {}
                        },
                        "line2": {
                          "return": "string",
                          "arguments": {}
                        },
                        "state": {
                          "return": "string",
                          "arguments": {}
                        },
                        "zip": {
                          "return": "string",
                          "arguments": {}
                        }
                      },
                      "arguments": {}
                    },
                    "aggregatePaymentLinks": {
                      "return": {
                        "edges": {
                          "return": [
                            {
                              "cursor": {
                                "return": "string",
                                "arguments": {}
                              },
                              "node": {
                                "return": {}
                              }
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        ]
      }
    }
  }
}

FirmApiToken: object

id:
object
return:
arguments:
object
createdBy:
object
return:
arguments:
object
createdOn:
object
return:
arguments:
object
nickname:
object
return:
arguments:
object
revoked:
object
return:
arguments:
object
Example
{
  "id": {
    "return": "string",
    "arguments": {}
  },
  "createdBy": {
    "return": "string",
    "arguments": {}
  },
  "createdOn": {
    "return": "object",
    "arguments": {}
  },
  "nickname": {
    "return": "string",
    "arguments": {}
  },
  "revoked": {
    "return": "boolean",
    "arguments": {}
  }
}

FirmApiTokenCreateInput: object

firmId:
nickname:
Example
{
  "firmId": "string",
  "nickname": "string"
}

FirmApiTokenCreateResult: object

id:
object
return:
arguments:
object
createdBy:
object
return:
arguments:
object
createdOn:
object
return:
arguments:
object
nickname:
object
return:
arguments:
object
revoked:
object
return:
arguments:
object
token:
object
return:
arguments:
object
Example
{
  "id": {
    "return": "string",
    "arguments": {}
  },
  "createdBy": {
    "return": "string",
    "arguments": {}
  },
  "createdOn": {
    "return": "object",
    "arguments": {}
  },
  "nickname": {
    "return": "string",
    "arguments": {}
  },
  "revoked": {
    "return": "boolean",
    "arguments": {}
  },
  "token": {
    "return": "string",
    "arguments": {}
  }
}

FirmApiTokenExchangeCodeInput: object

code:
nickname:
Example
{
  "code": "string",
  "nickname": "string"
}

FirmApiTokenExchangeCodeResult: object

id:
object
return:
arguments:
object
createdBy:
object
return:
arguments:
object
createdOn:
object
return:
arguments:
object
nickname:
object
return:
arguments:
object
revoked:
object
return:
arguments:
object
token:
object
return:
arguments:
object
Example
{
  "id": {
    "return": "string",
    "arguments": {}
  },
  "createdBy": {
    "return": "string",
    "arguments": {}
  },
  "createdOn": {
    "return": "object",
    "arguments": {}
  },
  "nickname": {
    "return": "string",
    "arguments": {}
  },
  "revoked": {
    "return": "boolean",
    "arguments": {}
  },
  "token": {
    "return": "string",
    "arguments": {}
  }
}

FirmApiTokenListResult: object

records:
object
return:
arguments:
object
total:
object
return:
Int
arguments:
object
Example
{
  "records": {
    "return": [
      {
        "id": {
          "return": "string",
          "arguments": {}
        },
        "createdBy": {
          "return": "string",
          "arguments": {}
        },
        "createdOn": {
          "return": "object",
          "arguments": {}
        },
        "nickname": {
          "return": "string",
          "arguments": {}
        },
        "revoked": {
          "return": "boolean",
          "arguments": {}
        }
      }
    ],
    "arguments": {}
  },
  "total": {
    "return": "number",
    "arguments": {}
  }
}

FirmApiTokenUpdateInput: object

firmApiTokenId:
nickname:
revoked:
Example
{
  "firmApiTokenId": "string",
  "nickname": "string",
  "revoked": "boolean"
}

FirmConnection: object

edges:
object
return:
arguments:
object
pageInfo:
object
return:
arguments:
object
Example
{
  "edges": {
    "return": [
      {
        "cursor": {
          "return": "string",
          "arguments": {}
        },
        "node": {
          "return": {
            "id": {
              "return": "object",
              "arguments": {}
            },
            "aggregatePaymentLinks": {
              "return": {
                "edges": {
                  "return": [
                    {
                      "cursor": {
                        "return": "string",
                        "arguments": {}
                      },
                      "node": {
                        "return": {
                          "id": {
                            "return": "object",
                            "arguments": {}
                          },
                          "balance": {
                            "return": {
                              "operatingOutstanding": {
                                "return": "number",
                                "arguments": {}
                              },
                              "operatingPaid": {
                                "return": "number",
                                "arguments": {}
                              },
                              "totalOutstanding": {
                                "return": "number",
                                "arguments": {}
                              },
                              "totalPaid": {
                                "return": "number",
                                "arguments": {}
                              },
                              "trustOutstanding": {
                                "return": "number",
                                "arguments": {}
                              },
                              "trustPaid": {
                                "return": "number",
                                "arguments": {}
                              }
                            },
                            "arguments": {}
                          },
                          "client": {
                            "return": {
                              "id": {
                                "return": "object",
                                "arguments": {}
                              },
                              "address": {
                                "return": {
                                  "id": {
                                    "return": "object",
                                    "arguments": {}
                                  },
                                  "city": {
                                    "return": "string",
                                    "arguments": {}
                                  },
                                  "line1": {
                                    "return": "string",
                                    "arguments": {}
                                  },
                                  "line2": {
                                    "return": "string",
                                    "arguments": {}
                                  },
                                  "state": {
                                    "return": "string",
                                    "arguments": {}
                                  },
                                  "zip": {
                                    "return": "string",
                                    "arguments": {}
                                  }
                                },
                                "arguments": {}
                              },
                              "aggregatePaymentLinks": {
                                "return": {}
                              }
                            }
                          }
                        }
                      }
                    }
                  ]
                }
              }
            }
          }
        }
      }
    ]
  }
}

FirmEdge: object

cursor:
object
return:
arguments:
object
node:
object
return:
arguments:
object
Example
{
  "cursor": {
    "return": "string",
    "arguments": {}
  },
  "node": {
    "return": {
      "id": {
        "return": "object",
        "arguments": {}
      },
      "aggregatePaymentLinks": {
        "return": {
          "edges": {
            "return": [
              {
                "cursor": {
                  "return": "string",
                  "arguments": {}
                },
                "node": {
                  "return": {
                    "id": {
                      "return": "object",
                      "arguments": {}
                    },
                    "balance": {
                      "return": {
                        "operatingOutstanding": {
                          "return": "number",
                          "arguments": {}
                        },
                        "operatingPaid": {
                          "return": "number",
                          "arguments": {}
                        },
                        "totalOutstanding": {
                          "return": "number",
                          "arguments": {}
                        },
                        "totalPaid": {
                          "return": "number",
                          "arguments": {}
                        },
                        "trustOutstanding": {
                          "return": "number",
                          "arguments": {}
                        },
                        "trustPaid": {
                          "return": "number",
                          "arguments": {}
                        }
                      },
                      "arguments": {}
                    },
                    "client": {
                      "return": {
                        "id": {
                          "return": "object",
                          "arguments": {}
                        },
                        "address": {
                          "return": {
                            "id": {
                              "return": "object",
                              "arguments": {}
                            },
                            "city": {
                              "return": "string",
                              "arguments": {}
                            },
                            "line1": {
                              "return": "string",
                              "arguments": {}
                            },
                            "line2": {
                              "return": "string",
                              "arguments": {}
                            },
                            "state": {
                              "return": "string",
                              "arguments": {}
                            },
                            "zip": {
                              "return": "string",
                              "arguments": {}
                            }
                          },
                          "arguments": {}
                        },
                        "aggregatePaymentLinks": {
                          "return": {
                            "edges": {
                              "return": [
                                {}
                              ]
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            ]
          }
        }
      }
    }
  }
}

FirmSettings: object

id:
object
return:
ID
arguments:
object
achEnabled:
object
return:
arguments:
object
achProcessor:
object
return:
arguments:
object
approvedForAch:
object
return:
arguments:
object
approvedForCard:
object
return:
arguments:
object
approvedForSurcharge:
object
return:
arguments:
object
brandingPageUrl:
object

A url to the Confido Legal UI branding page for customizing the payment page.

return:
arguments:
object
ccProcessor:
object
return:
arguments:
object
checkEnabled:
object
return:
arguments:
object
checkMailingAddress:
object
return:
arguments:
object
combineInvoicesForSameClient:
object
return:
arguments:
object
creditEnabled:
object
return:
arguments:
object
debitEnabled:
object
return:
arguments:
object
processingEnv:
object
return:
arguments:
object
promptToCreateSPM:
object
return:
arguments:
object
requireCvvForSpm:
object
return:
arguments:
object
surchargeEnabled:
object
return:
arguments:
object
surchargeRate:
object
return:
arguments:
object
timezone:
object
return:
arguments:
object
Example
{
  "id": {
    "return": "object",
    "arguments": {}
  },
  "achEnabled": {
    "return": "boolean",
    "arguments": {}
  },
  "achProcessor": {
    "return": "string",
    "arguments": {}
  },
  "approvedForAch": {
    "return": "boolean",
    "arguments": {}
  },
  "approvedForCard": {
    "return": "boolean",
    "arguments": {}
  },
  "approvedForSurcharge": {
    "return": "boolean",
    "arguments": {}
  },
  "brandingPageUrl": {
    "return": "string",
    "arguments": {}
  },
  "ccProcessor": {
    "return": "string",
    "arguments": {}
  },
  "checkEnabled": {
    "return": "boolean",
    "arguments": {}
  },
  "checkMailingAddress": {
    "return": {
      "id": {
        "return": "object",
        "arguments": {}
      },
      "city": {
        "return": "string",
        "arguments": {}
      },
      "line1": {
        "return": "string",
        "arguments": {}
      },
      "line2": {
        "return": "string",
        "arguments": {}
      },
      "state": {
        "return": "string",
        "arguments": {}
      },
      "zip": {
        "return": "string",
        "arguments": {}
      }
    },
    "arguments": {}
  },
  "combineInvoicesForSameClient": {
    "return": "boolean",
    "arguments": {}
  },
  "creditEnabled": {
    "return": "boolean",
    "arguments": {}
  },
  "debitEnabled": {
    "return": "boolean",
    "arguments": {}
  },
  "processingEnv": {
    "return": "string",
    "arguments": {}
  },
  "promptToCreateSPM": {
    "return": "boolean",
    "arguments": {}
  },
  "requireCvvForSpm": {
    "return": "boolean",
    "arguments": {}
  },
  "surchargeEnabled": {
    "return": "boolean",
    "arguments": {}
  },
  "surchargeRate": {
    "return": "number",
    "arguments": {}
  },
  "timezone": {
    "return": "string"
  }
}

FirmStatus: string

The status of a firm

object
CREATED
object
APP_IN_DRAFT
object
APP_SUBMITTED
object
APP_IN_REVIEW
object
ACTIVE
object
INACTIVE

Float: number

The Float scalar type represents signed double-precision fractional values as specified by IEEE 754.

Example
number

ID: object

The ID scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4") or integer (such as 4) input value will be accepted as an ID.

Example
object

Int: number

The Int scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.

Example
number

InviteUserInput: object

email:
firmId:
firstName:
lastName:
role:
Example
{
  "email": "string",
  "firmId": "string",
  "firstName": "string",
  "lastName": "string",
  "role": "string"
}

Matter: object

Defines a Matter for a specific Client. Useful for grouping Payments together under a specific name.

id:
object

A unique uuidv4 value for this object.

return:
ID
arguments:
object
balance:
object

Balance object holding all the historic payment information for this matter in cents.

return:
arguments:
object
client:
object

The primary Client associated with this Matter.

return:
arguments:
object
externalId:
object

(Nullable) An externalId for integration partners to set and query with.

return:
ID
arguments:
object
paymentLinks:
object

A Connection of all the Payment Links associated with this Matter.

return:
arguments:
object
afterDate:

The createdOn date to grab Payment Link objects after.

after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

payments:
object

A Connection of all the Payments made on this Matter.

return:
arguments:
object
afterDate:

The createdOn date to grab Payment objects after.

after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

name:
object

A name given to this Matter.

return:
arguments:
object
secondaryClient:
object

(Nullable) A secondary Client associated with this Matter.

return:
arguments:
object
status:
object

The current status of this Matter.

return:
arguments:
object
transactions:
object

A Connection of all the Transactions associated with this Matter. You can also specify a timestamp on afterDate to gather all Transactions after that timestamp.

return:
arguments:
object
afterDate:

The createdOn date to grab Transaction objects after.

after:

The cursor to start the query from. The response will not include the object associated with the cursor.

first:
Int
10

The number of objects to return after the cursor.

orderDirection: ASC

The order direction the objects should be returned in. Either ASC for ascending or DESC for descending.

Example
{
  "id": {
    "return": "object",
    "arguments": {}
  },
  "balance": {
    "return": {
      "operatingOutstanding": {
        "return": "number",
        "arguments": {}
      },
      "operatingPaid": {
        "return": "number",
        "arguments": {}
      },
      "totalOutstanding": {
        "return": "number",
        "arguments": {}
      },
      "totalPaid": {
        "return": "number",
        "arguments": {}
      },
      "trustOutstanding": {
        "return": "number",
        "arguments": {}
      },
      "trustPaid": {
        "return": "number",
        "arguments": {}
      }
    },
    "arguments": {}
  },
  "client": {
    "return": {
      "id": {
        "return": "object",
        "arguments": {}
      },
      "address": {
        "return": {
          "id": {
            "return": "object",
            "arguments": {}
          },
          "city": {
            "return": "string",
            "arguments": {}
          },
          "line1": {
            "return": "string",
            "arguments": {}
          },
          "line2": {
            "return": "string",
            "arguments": {}
          },
          "state": {
            "return": "string",
            "arguments": {}
          },
          "zip": {
            "return": "string",
            "arguments": {}
          }
        },
        "arguments": {}
      },
      "aggregatePaymentLinks": {
        "return": {
          "edges": {
            "return": [
              {
                "cursor": {
                  "return": "string",
                  "arguments": {}
                },
                "node": {
                  "return": {
                    "id": {
                      "return": "object",
                      "arguments": {}
                    },
                    "balance": {
                      "return": {
                        "operatingOutstanding": {
                          "return": "number",
                          "arguments": {}
                        },
                        "operatingPaid": {
                          "return": "number",
                          "arguments": {}
                        },
                        "totalOutstanding": {
                          "return": "number"
                        }
                      }
                    }
                  }
                }
              }
            ]
          }
        }
      }
    }
  }
}

MatterConnection: object

edges:
object
return:
arguments:
object
pageInfo:
object
return:
arguments:
object
Example
{
  "edges": {
    "return": [
      {
        "cursor": {
          "return": "string",
          "arguments": {}
        },
        "node": {
          "return": {
            "id": {
              "return": "object",
              "arguments": {}
            },
            "balance": {
              "return": {
                "operatingOutstanding": {
                  "return": "number",
                  "arguments": {}
                },
                "operatingPaid": {
                  "return": "number",
                  "arguments": {}
                },
                "totalOutstanding": {
                  "return": "number",
                  "arguments": {}
                },
                "totalPaid": {
                  "return": "number",
                  "arguments": {}
                },
                "trustOutstanding": {
                  "return": "number",
                  "arguments": {}
                },
                "trustPaid": {
                  "return": "number",
                  "arguments": {}
                }
              },
              "arguments": {}
            },
            "client": {
              "return": {
                "id": {
                  "return": "object",
                  "arguments": {}
                },
                "address": {
                  "return": {
                    "id": {
                      "return": "object",
                      "arguments": {}
                    },
                    "city": {
                      "return": "string",
                      "arguments": {}
                    },
                    "line1": {
                      "return": "string",
                      "arguments": {}
                    },
                    "line2": {
                      "return": "string",
                      "arguments": {}
                    },
                    "state": {
                      "return": "string",
                      "arguments": {}
                    },
                    "zip": {
                      "return": "string",
                      "arguments": {}
                    }
                  },
                  "arguments": {}
                },
                "aggregatePaymentLinks": {
                  "return": {
                    "edges": {
                      "return": [
                        {
                          "cursor": {
                            "return": "string",
                            "arguments": {}
                          },
                          "node": {
                            "return": {
                              "id": {
                                "return": "object",
                                "arguments": {}
                              },
                              "balance": {
                                "return": {}
                              }
                            }
                          }
                        }
                      ]
                    }
                  }
                }
              }
            }
          }
        }
      }
    ]
  }
}

MatterEdge: object

cursor:
object
return:
arguments:
object
node:
object
return:
arguments:
object
Example
{
  "cursor": {
    "return": "string",
    "arguments": {}
  },
  "node": {
    "return": {
      "id": {
        "return": "object",
        "arguments": {}
      },
      "balance": {
        "return": {
          "operatingOutstanding": {
            "return": "number",
            "arguments": {}
          },
          "operatingPaid": {
            "return": "number",
            "arguments": {}
          },
          "totalOutstanding": {
            "return": "number",
            "arguments": {}
          },
          "totalPaid": {
            "return": "number",
            "arguments": {}
          },
          "trustOutstanding": {
            "return": "number",
            "arguments": {}
          },
          "trustPaid": {
            "return": "number",
            "arguments": {}
          }
        },
        "arguments": {}
      },
      "client": {
        "return": {
          "id": {
            "return": "object",
            "arguments": {}
          },
          "address": {
            "return": {
              "id": {
                "return": "object",
                "arguments": {}
              },
              "city": {
                "return": "string",
                "arguments": {}
              },
              "line1": {
                "return": "string",
                "arguments": {}
              },
              "line2": {
                "return": "string",
                "arguments": {}
              },
              "state": {
                "return": "string",
                "arguments": {}
              },
              "zip": {
                "return": "string",
                "arguments": {}
              }
            },
            "arguments": {}
          },
          "aggregatePaymentLinks": {
            "return": {
              "edges": {
                "return": [
                  {
                    "cursor": {
                      "return": "string",
                      "arguments": {}
                    },
                    "node": {
                      "return": {
                        "id": {
                          "return": "object",
                          "arguments": {}
                        },
                        "balance": {
                          "return": {
                            "operatingOutstanding": {
                              "return": "number",
                              "arguments": {}
                            }
                          }
                        }
                      }
                    }
                  }
                ]
              }
            }
          }
        }
      }
    }
  }
}

Node: object

id:
object
return:
ID
arguments:
object
Example
{
  "id": {
    "return": "object",
    "arguments": {}
  }
}

OnboardingToken: object

expiresAt:
object
return:
arguments:
object
token:
object
return:
arguments:
object
Example
{
  "expiresAt": {
    "return": "object",
    "arguments": {}
  },
  "token": {
    "return": "string",
    "arguments": {}
  }
}

OrderDir: string

object
ASC
object
DESC

PDDate: object

Rest Manager passes Date objects as string so need to cast them.

Example
object

PageInfo: object

endCursor:
object
return:
ID
arguments:
object
hasNextPage:
object
return:
arguments:
object
Example
{
  "endCursor": {
    "return": "object",
    "arguments": {}
  },
  "hasNextPage": {
    "return": "boolean",
    "arguments": {}
  }
}

Partner: object

id:
object
return:
arguments:
object
appId:
object
return:
arguments:
object
connectLogoUrl:
object
return:
arguments:
object
title:
object
return:
arguments:
object
Example
{
  "id": {
    "return": "string",
    "arguments": {}
  },
  "appId": {
    "return": "string",
    "arguments": {}
  },
  "connectLogoUrl": {
    "return": "string",
    "arguments": {}
  },
  "title": {
    "return": "string",
    "arguments": {}
  }
}

Payment: object

id:
object
return:
ID
arguments:
object
amount:
object
return:
Int
arguments:
object
cardBrand:
object
return:
arguments:
object
client:
object
return:
arguments:
object
createdOn:
object
return:
arguments:
object
firm:
object
return:
arguments:
object
latestActivity:
object
return:
arguments:
object
matter:
object
return:
arguments:
object
paymentLink:
object
return:
arguments:
object
status:
object
return:
arguments:
object
storedPaymentMethod:
object
return:
arguments:
object
transactions:
object
return:
arguments:
object
Example
{
  "id": {
    "return": "object",
    "arguments": {}
  },
  "amount": {
    "return": "number",
    "arguments": {}
  },
  "cardBrand": {
    "return": "string",
    "arguments": {}
  },
  "client": {
    "return": {
      "id": {
        "return": "object",
        "arguments": {}
      },
      "address": {
        "return": {
          "id": {
            "return": "object",
            "arguments": {}
          },
          "city": {
            "return": "string",
            "arguments": {}
          },
          "line1": {
            "return": "string",
            "arguments": {}
          },
          "line2": {
            "return": "string",
            "arguments": {}
          },
          "state": {
            "return": "string",
            "arguments": {}
          },
          "zip": {
            "return": "string",
            "arguments": {}
          }
        },
        "arguments": {}
      },
      "aggregatePaymentLinks": {
        "return": {
          "edges": {
            "return": [
              {
                "cursor": {
                  "return": "string",
                  "arguments": {}
                },
                "node": {
                  "return": {
                    "id": {
                      "return": "object",
                      "arguments": {}
                    },
                    "balance": {
                      "return": {
                        "operatingOutstanding": {
                          "return": "number",
                          "arguments": {}
                        },
                        "operatingPaid": {
                          "return": "number",
                          "arguments": {}
                        },
                        "totalOutstanding": {
                          "return": "number",
                          "arguments": {}
                        },
                        "totalPaid": {
                          "return": "number",
                          "arguments": {}
                        },
                        "trustOutstanding": {
                          "return": "number",
                          "arguments": {}
                        },
                        "trustPaid": {
                          "return": "number",
                          "arguments": {}
                        }
                      },
                      "arguments": {}
                    },
                    "client": {
                      "return": {
                        "id": {
                          "return": "object"
                        }
                      }
                    }
                  }
                }
              }
            ]
          }
        }
      }
    }
  }
}

PaymentConnection: object

edges:
object
return:
arguments:
object
pageInfo:
object
return:
arguments:
object
Example
{
  "edges": {
    "return": [
      {
        "cursor": {
          "return": "string",
          "arguments": {}
        },
        "node": {
          "return": {
            "id": {
              "return": "object",
              "arguments": {}
            },
            "amount": {
              "return": "number",
              "arguments": {}
            },
            "cardBrand": {
              "return": "string",
              "arguments": {}
            },
            "client": {
              "return": {
                "id": {
                  "return": "object",
                  "arguments": {}
                },
                "address": {
                  "return": {
                    "id": {
                      "return": "object",
                      "arguments": {}
                    },
                    "city": {
                      "return": "string",
                      "arguments": {}
                    },
                    "line1": {
                      "return": "string",
                      "arguments": {}
                    },
                    "line2": {
                      "return": "string",
                      "arguments": {}
                    },
                    "state": {
                      "return": "string",
                      "arguments": {}
                    },
                    "zip": {
                      "return": "string",
                      "arguments": {}
                    }
                  },
                  "arguments": {}
                },
                "aggregatePaymentLinks": {
                  "return": {
                    "edges": {
                      "return": [
                        {
                          "cursor": {
                            "return": "string",
                            "arguments": {}
                          },
                          "node": {
                            "return": {
                              "id": {
                                "return": "object",
                                "arguments": {}
                              },
                              "balance": {
                                "return": {
                                  "operatingOutstanding": {
                                    "return": "number",
                                    "arguments": {}
                                  },
                                  "operatingPaid": {
                                    "return": "number",
                                    "arguments": {}
                                  },
                                  "totalOutstanding": {
                                    "return": "number",
                                    "arguments": {}
                                  },
                                  "totalPaid": {
                                    "return": "number",
                                    "arguments": {}
                                  },
                                  "trustOutstanding": {
                                    "return": "number",
                                    "arguments": {}
                                  }
                                }
                              }
                            }
                          }
                        }
                      ]
                    }
                  }
                }
              }
            }
          }
        }
      }
    ]
  }
}

PaymentEdge: object

cursor:
object
return:
arguments:
object
node:
object
return:
arguments:
object
Example
{
  "cursor": {
    "return": "string",
    "arguments": {}
  },
  "node": {
    "return": {
      "id": {
        "return": "object",
        "arguments": {}
      },
      "amount": {
        "return": "number",
        "arguments": {}
      },
      "cardBrand": {
        "return": "string",
        "arguments": {}
      },
      "client": {
        "return": {
          "id": {
            "return": "object",
            "arguments": {}
          },
          "address": {
            "return": {
              "id": {
                "return": "object",
                "arguments": {}
              },
              "city": {
                "return": "string",
                "arguments": {}
              },
              "line1": {
                "return": "string",
                "arguments": {}
              },
              "line2": {
                "return": "string",
                "arguments": {}
              },
              "state": {
                "return": "string",
                "arguments": {}
              },
              "zip": {
                "return": "string",
                "arguments": {}
              }
            },
            "arguments": {}
          },
          "aggregatePaymentLinks": {
            "return": {
              "edges": {
                "return": [
                  {
                    "cursor": {
                      "return": "string",
                      "arguments": {}
                    },
                    "node": {
                      "return": {
                        "id": {
                          "return": "object",
                          "arguments": {}
                        },
                        "balance": {
                          "return": {
                            "operatingOutstanding": {
                              "return": "number",
                              "arguments": {}
                            },
                            "operatingPaid": {
                              "return": "number",
                              "arguments": {}
                            },
                            "totalOutstanding": {
                              "return": "number",
                              "arguments": {}
                            },
                            "totalPaid": {
                              "return": "number",
                              "arguments": {}
                            },
                            "trustOutstanding": {
                              "return": "number",
                              "arguments": {}
                            },
                            "trustPaid": {
                              "return": "number",
                              "arguments": {}
                            }
                          }
                        }
                      }
                    }
                  }
                ]
              }
            }
          }
        }
      }
    }
  }
}

PaymentLinkConnection: object

edges:
object
return:
arguments:
object
pageInfo:
object
return:
arguments:
object
Example
{
  "edges": {
    "return": [
      {
        "cursor": {
          "return": "string",
          "arguments": {}
        },
        "node": {
          "return": {
            "id": {
              "return": "object",
              "arguments": {}
            },
            "aggregatePaymentLinks": {
              "return": {
                "edges": {
                  "return": [
                    {
                      "cursor": {
                        "return": "string",
                        "arguments": {}
                      },
                      "node": {
                        "return": {
                          "id": {
                            "return": "object",
                            "arguments": {}
                          },
                          "balance": {
                            "return": {
                              "operatingOutstanding": {
                                "return": "number",
                                "arguments": {}
                              },
                              "operatingPaid": {
                                "return": "number",
                                "arguments": {}
                              },
                              "totalOutstanding": {
                                "return": "number",
                                "arguments": {}
                              },
                              "totalPaid": {
                                "return": "number",
                                "arguments": {}
                              },
                              "trustOutstanding": {
                                "return": "number",
                                "arguments": {}
                              },
                              "trustPaid": {
                                "return": "number",
                                "arguments": {}
                              }
                            },
                            "arguments": {}
                          },
                          "client": {
                            "return": {
                              "id": {
                                "return": "object",
                                "arguments": {}
                              },
                              "address": {
                                "return": {
                                  "id": {
                                    "return": "object",
                                    "arguments": {}
                                  },
                                  "city": {
                                    "return": "string",
                                    "arguments": {}
                                  },
                                  "line1": {
                                    "return": "string",
                                    "arguments": {}
                                  },
                                  "line2": {
                                    "return": "string",
                                    "arguments": {}
                                  },
                                  "state": {
                                    "return": "string",
                                    "arguments": {}
                                  },
                                  "zip": {
                                    "return": "string",
                                    "arguments": {}
                                  }
                                },
                                "arguments": {}
                              },
                              "aggregatePaymentLinks": {
                                "return": {}
                              }
                            }
                          }
                        }
                      }
                    }
                  ]
                }
              }
            }
          }
        }
      }
    ]
  }
}

PaymentLinkEdge: object

cursor:
object
return:
arguments:
object
node:
object
return:
arguments:
object
Example
{
  "cursor": {
    "return": "string",
    "arguments": {}
  },
  "node": {
    "return": {
      "id": {
        "return": "object",
        "arguments": {}
      },
      "aggregatePaymentLinks": {
        "return": {
          "edges": {
            "return": [
              {
                "cursor": {
                  "return": "string",
                  "arguments": {}
                },
                "node": {
                  "return": {
                    "id": {
                      "return": "object",
                      "arguments": {}
                    },
                    "balance": {
                      "return": {
                        "operatingOutstanding": {
                          "return": "number",
                          "arguments": {}
                        },
                        "operatingPaid": {
                          "return": "number",
                          "arguments": {}
                        },
                        "totalOutstanding": {
                          "return": "number",
                          "arguments": {}
                        },
                        "totalPaid": {
                          "return": "number",
                          "arguments": {}
                        },
                        "trustOutstanding": {
                          "return": "number",
                          "arguments": {}
                        },
                        "trustPaid": {
                          "return": "number",
                          "arguments": {}
                        }
                      },
                      "arguments": {}
                    },
                    "client": {
                      "return": {
                        "id": {
                          "return": "object",
                          "arguments": {}
                        },
                        "address": {
                          "return": {
                            "id": {
                              "return": "object",
                              "arguments": {}
                            },
                            "city": {
                              "return": "string",
                              "arguments": {}
                            },
                            "line1": {
                              "return": "string",
                              "arguments": {}
                            },
                            "line2": {
                              "return": "string",
                              "arguments": {}
                            },
                            "state": {
                              "return": "string",
                              "arguments": {}
                            },
                            "zip": {
                              "return": "string",
                              "arguments": {}
                            }
                          },
                          "arguments": {}
                        },
                        "aggregatePaymentLinks": {
                          "return": {
                            "edges": {
                              "return": [
                                {}
                              ]
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            ]
          }
        }
      }
    }
  }
}

PaymentMethod: string

object
ACH
object
CHECK
object
CREDIT
object
DEBIT
object
UNKNOWN

PaymentStatus: string

object
error
object
success
object
partial_success
object
failed

ProcessingEnv: string

object
production
object
sandbox

ReactivateStoredPaymentMethodInput: object

id:
Example
{
  "id": "string"
}

RecordManualPaymentInput: object

The object for recording a manual payment on a PaymentLink.

amounts:

A list of amounts to make the manual payment on. If operating or trust is also defined, a UserInputError will be thrown.

billingEmail:

[Optional] The email address to link to the manual payment.

billingName:

[Optional] The name to link to the manual payment.

operating:
Int

The amount in cents to deposit into the default operating account. If amounts is also defined, a UserInputError will be thrown.

paymentLinkId:
ID

[Required] The id of the PaymentLink to make the manual payment on.

statement:

[Optional] A statement to add to the manual payment for future reference.

trust:
Int

The amount in cents to deposit into the default trust account. If amounts is also defined, a UserInputError will be thrown.

Example
{
  "amounts": [
    {
      "amount": "number",
      "bankAccountId": "string"
    }
  ],
  "billingEmail": "string",
  "billingName": "string",
  "operating": "number",
  "paymentLinkId": "object",
  "statement": "string",
  "trust": "number"
}

RefundTransactionInput: object

amount:
Int

The amount in cents to refund for a partial refund. If null, the entire transaction will be refunded.

sendReceipt:

sendReceipt=true will definitely send a receipt and sendReceipt=false will definitely not send a receipt. Unset will fallback to Firm's defaults.

surchargeAmount:
Int

The surcharge amount in cents to refund for a partial refund. Must be defined if amount is defined and the transaction had a surcharge amount.

transactionId:

The id of the transaction to refund.

Example
{
  "amount": "number",
  "sendReceipt": "boolean",
  "surchargeAmount": "number",
  "transactionId": "string"
}

RemoveContactInput: object

Defines the parameters for removing a Contact.

contactId:
ID

(Required) The uuidv4 id of the Contact to remove.

Example
{
  "contactId": "object"
}

RemovePaymentLinkInput: object

Defines the parameters for removing a PaymentLink.

id:
ID

(Required) The uuidv4 id of the PaymentLink to remove.

Example
{
  "id": "object"
}

ResendUserInviteEmailInput: object

email:
firmId:
Example
{
  "email": "string",
  "firmId": "string"
}

RunPaymentInput: object

accountType:

The type of bank account for an ACH payment. Possible values: 'checking' or 'savings'. Defaults to 'checking'.

amount:
Int
payerEmail:
payerName:
payerZip:
paymentMethod:
paymentToken:
savePaymentMethod:
sendReceipt:

sendReceipt=true will definitely send a receipt and sendReceipt=false will definitely not send a receipt. Unset will fallback to Firm's defaults.

Example
{
  "accountType": "string",
  "amount": "number",
  "payerEmail": "string",
  "payerName": "string",
  "payerZip": "string",
  "paymentMethod": "string",
  "paymentToken": "string",
  "savePaymentMethod": "boolean",
  "sendReceipt": "boolean"
}

SPMPaymentInput: object

The SPM Payment Input is used to create a new payment on the Stored Payment Method with the corresponding id. A valid input must define either operating, trust, or the amount. If operating or trust are defined, the Firm's default Bank Account for that category will be used.

amount:

An amount object that defines the amount of the payment and which Bank Account to deposit the payment into.

emailForReceipt:

(Optional) Defines an email to send a receipt to for the payment on the Stored Payment Method. Email must be valid or the request will error out.

matterId:
ID

(Optional) An optional Matter id to link the payment to.

operating:
Int

An integer value in cents to charge the Stored Payment Method and deposit into the default operating Bank Account.

sendReceipt:

sendReceipt=true will definitely send a receipt and sendReceipt=false will definitely not send a receipt. Unset will fallback to Firm's defaults.

storedPaymentMethodId:
ID

The id of the Stored Payment Method to charge.

trust:
Int

An integer value in cents to charge the Stored Payment Method and deposit into the default trust Bank Account.

Example
{
  "amount": {
    "amount": "number",
    "bankAccountId": "string"
  },
  "emailForReceipt": "string",
  "matterId": "object",
  "operating": "number",
  "sendReceipt": "boolean",
  "storedPaymentMethodId": "object",
  "trust": "number"
}

SandboxOnlyCreateMockStatementInput: object

firmId:
month:

The month in the format YYYY-MM to create a statement for.

Example
{
  "firmId": "string",
  "month": "string"
}

SandboxOnlyMoveTransactionInput: object

transactionId:
Example
{
  "transactionId": "string"
}

SandboxOnlyTriggerAchReturnInput: object

transactionId:

The id of the transaction to trigger an ACH return for.

Example
{
  "transactionId": "string"
}

SandboxOnlyUpdateMockStatement: object

statementId:
Example
{
  "statementId": "string"
}

Schedule: object

ends:
object
return:
arguments:
object
frequency:
object
return:
arguments:
object
Example
{
  "ends": {
    "return": {
      "amountPaid": {
        "return": "number",
        "arguments": {}
      },
      "never": {
        "return": "boolean",
        "arguments": {}
      },
      "on": {
        "return": "string",
        "arguments": {}
      },
      "payments": {
        "return": "number",
        "arguments": {}
      }
    },
    "arguments": {}
  },
  "frequency": {
    "return": {
      "biweekly": {
        "return": [
          "string"
        ],
        "arguments": {}
      },
      "monthly": {
        "return": [
          "number"
        ],
        "arguments": {}
      },
      "weekly": {
        "return": [
          "string"
        ],
        "arguments": {}
      },
      "yearly": {
        "return": [
          "string"
        ],
        "arguments": {}
      }
    },
    "arguments": {}
  }
}

Scope: object

firm:
object
return:
arguments:
object
partner:
object
return:
arguments:
object
paymentSession:
object
return:
arguments:
object
role:
object
return:
arguments:
object
Example
{
  "firm": {
    "return": {
      "id": {
        "return": "string",
        "arguments": {}
      },
      "name": {
        "return": "string",
        "arguments": {}
      }
    },
    "arguments": {}
  },
  "partner": {
    "return": {
      "id": {
        "return": "string",
        "arguments": {}
      },
      "appId": {
        "return": "string",
        "arguments": {}
      }
    },
    "arguments": {}
  },
  "paymentSession": {
    "return": {
      "id": {
        "return": "string",
        "arguments": {}
      }
    },
    "arguments": {}
  },
  "role": {
    "return": "string",
    "arguments": {}
  }
}

ScopeFirm: object

id:
object
return:
arguments:
object
name:
object
return:
arguments:
object
Example
{
  "id": {
    "return": "string",
    "arguments": {}
  },
  "name": {
    "return": "string",
    "arguments": {}
  }
}

ScopePartner: object

id:
object
return:
arguments:
object
appId:
object
return:
arguments:
object
Example
{
  "id": {
    "return": "string",
    "arguments": {}
  },
  "appId": {
    "return": "string",
    "arguments": {}
  }
}

ScopePaymentSession: object

id:
object
return:
arguments:
object
Example
{
  "id": {
    "return": "string",
    "arguments": {}
  }
}

SendPaymentRequestInput: object

aggregateLinkId:
ID
bccEmails:
ccEmails:
emails:
message:
paymentLinkId:
ID
subject:
Example
{
  "aggregateLinkId": "object",
  "bccEmails": [
    "string"
  ],
  "ccEmails": [
    "string"
  ],
  "emails": [
    "string"
  ],
  "message": "string",
  "paymentLinkId": "object",
  "subject": "string"
}

SpmDeclineInfo: object

consecutiveDeclines:
object
return:
Int
arguments:
object
declineMessage:
object
return:
arguments:
object
Example
{
  "consecutiveDeclines": {
    "return": "number",
    "arguments": {}
  },
  "declineMessage": {
    "return": "string",
    "arguments": {}
  }
}

Statement: object

The firm's statement for a specific month.

additionalCredits:
object

Additional credits made to the firm this month.

return:
arguments:
object
additionalFees:
object

Additional fees charged to the firm this month.

return:
arguments:
object
bankAccounts:
object
return:
arguments:
object
debits:
object
return:
arguments:
object
id:
object
return:
arguments:
object
month:
object

The month for this statement in the format YYYY-MM

return:
arguments:
object
pdfUrl:
object
return:
arguments:
object
Example
{
  "additionalCredits": {
    "return": [
      {
        "amount": {
          "return": "number",
          "arguments": {}
        },
        "description": {
          "return": "string",
          "arguments": {}
        },
        "type": {
          "return": "string",
          "arguments": {}
        }
      }
    ],
    "arguments": {}
  },
  "additionalFees": {
    "return": [
      {
        "amount": {
          "return": "number",
          "arguments": {}
        },
        "description": {
          "return": "string",
          "arguments": {}
        },
        "type": {
          "return": "string",
          "arguments": {}
        }
      }
    ],
    "arguments": {}
  },
  "bankAccounts": {
    "return": [
      {
        "bankAccountCategory": {
          "return": "string",
          "arguments": {}
        },
        "bankAccountDeleted": {
          "return": "boolean",
          "arguments": {}
        },
        "bankAccountMask": {
          "return": "string",
          "arguments": {}
        },
        "bankAccountNickname": {
          "return": "string",
          "arguments": {}
        },
        "achPaymentVolume": {
          "return": "number",
          "arguments": {}
        },
        "cardPaymentVolume": {
          "return": "number",
          "arguments": {}
        },
        "totalPaymentVolume": {
          "return": "number",
          "arguments": {}
        },
        "achTransactions": {
          "return": "number",
          "arguments": {}
        },
        "cardTransactions": {
          "return": "number",
          "arguments": {}
        },
        "totalTransactions": {
          "return": "number",
          "arguments": {}
        },
        "achFees": {
          "return": "number",
          "arguments": {}
        },
        "cardFees": {
          "return": "number",
          "arguments": {}
        },
        "surchargeFeesCollected": {
          "return": "number",
          "arguments": {}
        },
        "totalFees": {
          "return": "number",
          "arguments": {}
        }
      }
    ],
    "arguments": {}
  },
  "debits": {
    "return": [
      {}
    ]
  }
}

StatementAdditionalCredit: object

amount:
object
return:
Int
arguments:
object
description:
object
return:
arguments:
object
type:
object
return:
arguments:
object
Example
{
  "amount": {
    "return": "number",
    "arguments": {}
  },
  "description": {
    "return": "string",
    "arguments": {}
  },
  "type": {
    "return": "string",
    "arguments": {}
  }
}

StatementAdditionalFee: object

amount:
object
return:
arguments:
object
description:
object
return:
arguments:
object
type:
object
return:
arguments:
object
Example
{
  "amount": {
    "return": "number",
    "arguments": {}
  },
  "description": {
    "return": "string",
    "arguments": {}
  },
  "type": {
    "return": "string",
    "arguments": {}
  }
}

StatementBankAccount: object

bankAccountCategory:
object
return:
arguments:
object
bankAccountDeleted:
object
return:
arguments:
object
bankAccountMask:
object
return:
arguments:
object
bankAccountNickname:
object
return:
arguments:
object
achPaymentVolume:
object
return:
arguments:
object
cardPaymentVolume:
object
return:
arguments:
object
totalPaymentVolume:
object
return:
arguments:
object
achTransactions:
object
return:
arguments:
object
cardTransactions:
object
return:
arguments:
object
totalTransactions:
object
return:
arguments:
object
achFees:
object
return:
arguments:
object
cardFees:
object
return:
arguments:
object
surchargeFeesCollected:
object
return:
arguments:
object
totalFees:
object
return:
arguments:
object
Example
{
  "bankAccountCategory": {
    "return": "string",
    "arguments": {}
  },
  "bankAccountDeleted": {
    "return": "boolean",
    "arguments": {}
  },
  "bankAccountMask": {
    "return": "string",
    "arguments": {}
  },
  "bankAccountNickname": {
    "return": "string",
    "arguments": {}
  },
  "achPaymentVolume": {
    "return": "number",
    "arguments": {}
  },
  "cardPaymentVolume": {
    "return": "number",
    "arguments": {}
  },
  "totalPaymentVolume": {
    "return": "number",
    "arguments": {}
  },
  "achTransactions": {
    "return": "number",
    "arguments": {}
  },
  "cardTransactions": {
    "return": "number",
    "arguments": {}
  },
  "totalTransactions": {
    "return": "number",
    "arguments": {}
  },
  "achFees": {
    "return": "number",
    "arguments": {}
  },
  "cardFees": {
    "return": "number",
    "arguments": {}
  },
  "surchargeFeesCollected": {
    "return": "number",
    "arguments": {}
  },
  "totalFees": {
    "return": "number",
    "arguments": {}
  }
}

StatementDebit: object

amount:
object
return:
arguments:
object
fromBankAccountCategory:
object
return:
arguments:
object
fromBankAccountMask:
object
return:
arguments:
object
fromBankAccountNickname:
object
return:
arguments:
object
statementDescriptor:
object
return:
arguments:
object
Example
{
  "amount": {
    "return": "number",
    "arguments": {}
  },
  "fromBankAccountCategory": {
    "return": "string",
    "arguments": {}
  },
  "fromBankAccountMask": {
    "return": "string",
    "arguments": {}
  },
  "fromBankAccountNickname": {
    "return": "string",
    "arguments": {}
  },
  "statementDescriptor": {
    "return": "string",
    "arguments": {}
  }
}

StatementListResult: object

records:
object
return:
arguments:
object
total:
object
return:
Int
arguments:
object
Example
{
  "records": {
    "return": [
      {
        "additionalCredits": {
          "return": [
            {
              "amount": {
                "return": "number",
                "arguments": {}
              },
              "description": {
                "return": "string",
                "arguments": {}
              },
              "type": {
                "return": "string",
                "arguments": {}
              }
            }
          ],
          "arguments": {}
        },
        "additionalFees": {
          "return": [
            {
              "amount": {
                "return": "number",
                "arguments": {}
              },
              "description": {
                "return": "string",
                "arguments": {}
              },
              "type": {
                "return": "string",
                "arguments": {}
              }
            }
          ],
          "arguments": {}
        },
        "bankAccounts": {
          "return": [
            {
              "bankAccountCategory": {
                "return": "string",
                "arguments": {}
              },
              "bankAccountDeleted": {
                "return": "boolean",
                "arguments": {}
              },
              "bankAccountMask": {
                "return": "string",
                "arguments": {}
              },
              "bankAccountNickname": {
                "return": "string",
                "arguments": {}
              },
              "achPaymentVolume": {
                "return": "number",
                "arguments": {}
              },
              "cardPaymentVolume": {
                "return": "number",
                "arguments": {}
              },
              "totalPaymentVolume": {
                "return": "number",
                "arguments": {}
              },
              "achTransactions": {
                "return": "number",
                "arguments": {}
              },
              "cardTransactions": {
                "return": "number",
                "arguments": {}
              },
              "totalTransactions": {
                "return": "number",
                "arguments": {}
              },
              "achFees": {
                "return": "number",
                "arguments": {}
              },
              "cardFees": {
                "return": "number",
                "arguments": {}
              },
              "surchargeFeesCollected": {
                "return": "number",
                "arguments": {}
              },
              "totalFees": {
                "return": "number",
                "arguments": {}
              }
            }
          ],
          "arguments": {}
        }
      }
    ]
  }
}

StoredPaymentMethod: object

A Stored Payment Method is a payment method (credit card, ACH, etc.) that has been saved to be charged later in the future. A Stored Payment Method is created by first creating a URL for a specific Client. The URL is then given to the Client for the payment method (credit card, ACH, etc.) info to be input. After the Client saves their payment info at the URL, it can be found by querying the Client again with the storedPaymentMethods included in the request.

id:
object

A unique uuidv4 value for this object.

return:
ID
arguments:
object
balance:
object

The balance associated with this Stored Payment Method object. All values in Cents.

return:
arguments:
object
canReactivate:
object
return:
arguments:
object
cardBrand:
object

The brand of the stored payment method card if the paymentMethod is credit or debit. Example: 'mastercard' or 'visa'.

return:
arguments:
object
client:
object

The Client associated with this Stored Payment Method. If null, Firm will be defined.

return:
arguments:
object
declineInfo:
object
return:
arguments:
object
firm:
object

The Firm associated with this Stored Payment Method. If null, Client will be defined.

return:
arguments:
object
lastFour:
object

The last four digits (this will sometimes return three) of the card number or ach bank account. Example: '1234'.

return:
arguments:
object
payerName:
object

The name the user input on the Stored Payment Method creation page.

return:
arguments:
object
nickname:
object

A nickname for this specific Stored Payment Method. This should be set after the user has created the Stored Payment Method and is used to help organize Stored Payment Methods if a single client has multiple.

return:
arguments:
object
paymentMethod:
object

The payment method of this Stored Payment Method. Example: 'ACH' or 'CREDIT'.

return:
arguments:
object
status:
object
return:
arguments:
object
surcharging:
object
return:
arguments:
object
type:
object
return:
arguments:
object
Example
{
  "id": {
    "return": "object",
    "arguments": {}
  },
  "balance": {
    "return": {
      "operatingOutstanding": {
        "return": "number",
        "arguments": {}
      },
      "operatingPaid": {
        "return": "number",
        "arguments": {}
      },
      "totalOutstanding": {
        "return": "number",
        "arguments": {}
      },
      "totalPaid": {
        "return": "number",
        "arguments": {}
      },
      "trustOutstanding": {
        "return": "number",
        "arguments": {}
      },
      "trustPaid": {
        "return": "number",
        "arguments": {}
      }
    },
    "arguments": {}
  },
  "canReactivate": {
    "return": "boolean",
    "arguments": {}
  },
  "cardBrand": {
    "return": "string",
    "arguments": {}
  },
  "client": {
    "return": {
      "id": {
        "return": "object",
        "arguments": {}
      },
      "address": {
        "return": {
          "id": {
            "return": "object",
            "arguments": {}
          },
          "city": {
            "return": "string",
            "arguments": {}
          },
          "line1": {
            "return": "string",
            "arguments": {}
          },
          "line2": {
            "return": "string",
            "arguments": {}
          },
          "state": {
            "return": "string",
            "arguments": {}
          },
          "zip": {
            "return": "string",
            "arguments": {}
          }
        },
        "arguments": {}
      },
      "aggregatePaymentLinks": {
        "return": {
          "edges": {
            "return": [
              {
                "cursor": {
                  "return": "string",
                  "arguments": {}
                },
                "node": {
                  "return": {
                    "id": {
                      "return": "object",
                      "arguments": {}
                    },
                    "balance": {
                      "return": {
                        "operatingOutstanding": {
                          "return": "number"
                        }
                      }
                    }
                  }
                }
              }
            ]
          }
        }
      }
    }
  }
}

StoredPaymentMethodConnection: object

edges:
object
return:
arguments:
object
pageInfo:
object
return:
arguments:
object
Example
{
  "edges": {
    "return": [
      {
        "cursor": {
          "return": "string",
          "arguments": {}
        },
        "node": {
          "return": {
            "id": {
              "return": "object",
              "arguments": {}
            },
            "balance": {
              "return": {
                "operatingOutstanding": {
                  "return": "number",
                  "arguments": {}
                },
                "operatingPaid": {
                  "return": "number",
                  "arguments": {}
                },
                "totalOutstanding": {
                  "return": "number",
                  "arguments": {}
                },
                "totalPaid": {
                  "return": "number",
                  "arguments": {}
                },
                "trustOutstanding": {
                  "return": "number",
                  "arguments": {}
                },
                "trustPaid": {
                  "return": "number",
                  "arguments": {}
                }
              },
              "arguments": {}
            },
            "canReactivate": {
              "return": "boolean",
              "arguments": {}
            },
            "cardBrand": {
              "return": "string",
              "arguments": {}
            },
            "client": {
              "return": {
                "id": {
                  "return": "object",
                  "arguments": {}
                },
                "address": {
                  "return": {
                    "id": {
                      "return": "object",
                      "arguments": {}
                    },
                    "city": {
                      "return": "string",
                      "arguments": {}
                    },
                    "line1": {
                      "return": "string",
                      "arguments": {}
                    },
                    "line2": {
                      "return": "string",
                      "arguments": {}
                    },
                    "state": {
                      "return": "string",
                      "arguments": {}
                    },
                    "zip": {
                      "return": "string",
                      "arguments": {}
                    }
                  },
                  "arguments": {}
                },
                "aggregatePaymentLinks": {
                  "return": {
                    "edges": {
                      "return": [
                        {
                          "cursor": {
                            "return": "string",
                            "arguments": {}
                          },
                          "node": {}
                        }
                      ]
                    }
                  }
                }
              }
            }
          }
        }
      }
    ]
  }
}

StoredPaymentMethodEdge: object

cursor:
object
return:
arguments:
object
node:
object
return:
arguments:
object
Example
{
  "cursor": {
    "return": "string",
    "arguments": {}
  },
  "node": {
    "return": {
      "id": {
        "return": "object",
        "arguments": {}
      },
      "balance": {
        "return": {
          "operatingOutstanding": {
            "return": "number",
            "arguments": {}
          },
          "operatingPaid": {
            "return": "number",
            "arguments": {}
          },
          "totalOutstanding": {
            "return": "number",
            "arguments": {}
          },
          "totalPaid": {
            "return": "number",
            "arguments": {}
          },
          "trustOutstanding": {
            "return": "number",
            "arguments": {}
          },
          "trustPaid": {
            "return": "number",
            "arguments": {}
          }
        },
        "arguments": {}
      },
      "canReactivate": {
        "return": "boolean",
        "arguments": {}
      },
      "cardBrand": {
        "return": "string",
        "arguments": {}
      },
      "client": {
        "return": {
          "id": {
            "return": "object",
            "arguments": {}
          },
          "address": {
            "return": {
              "id": {
                "return": "object",
                "arguments": {}
              },
              "city": {
                "return": "string",
                "arguments": {}
              },
              "line1": {
                "return": "string",
                "arguments": {}
              },
              "line2": {
                "return": "string",
                "arguments": {}
              },
              "state": {
                "return": "string",
                "arguments": {}
              },
              "zip": {
                "return": "string",
                "arguments": {}
              }
            },
            "arguments": {}
          },
          "aggregatePaymentLinks": {
            "return": {
              "edges": {
                "return": [
                  {
                    "cursor": {
                      "return": "string",
                      "arguments": {}
                    },
                    "node": {
                      "return": {
                        "id": {
                          "return": "object"
                        }
                      }
                    }
                  }
                ]
              }
            }
          }
        }
      }
    }
  }
}

StoredPaymentMethodSurcharging: object

rate:
object
return:
arguments:
object
willBeApplied:
object
return:
arguments:
object
Example
{
  "rate": {
    "return": "number",
    "arguments": {}
  },
  "willBeApplied": {
    "return": "boolean",
    "arguments": {}
  }
}

StoredPaymentMethodUrl: object

url:
object
return:
arguments:
object
Example
{
  "url": {
    "return": "string",
    "arguments": {}
  }
}

String: string

The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

Subscription: object

amounts:
object

A list of one amount object indicating the amount that will be charged and the bank account to which the amount will be deposited on each billing cycle.

return:
arguments:
object
balance:
object

A Balance object with the current state of the subscription.

return:
arguments:
object
client:
object

The Client associated with the subscription.

return:
arguments:
object
id:
object

A unique uuidv4 value for this object.

return:
arguments:
object
matter:
object

(Nullable) The Matter associated with the subscription.

return:
arguments:
object
paymentMethods:
object

The payment methods to allow when activating or updating the subscription.

return:
arguments:
object
schedule:
object

An object defining the schedule of the subscription. When the subscription charges the client and when the subscription is considered fulfilled.

return:
arguments:
object
status:
object

The current status of the subscription.

Possible values: 'active', 'canceled', 'fulfilled', 'payment_failed', 'needs_attention', and 'pending'

return:
arguments:
object
storedPaymentMethod:
object

(Nullable) The stored payment method associated with the subscription.

If this is null, the url should be used to activate the subscription by collecting the client of the firm's payment method information.

return:
arguments:
object
surchargeEnabled:
object

A boolean value indicating whether surcharging will be added to the subscription payments.

return:
arguments:
object
upcomingPayments:
object

A list of upcoming payment dates. This will be a list of string values of the form 'YYYY-MM-DD'.

return:
arguments:
object
url:
object

The url to use to activate or change the stored payment method of the subscription by collecting the firm's client's payment method information.

return:
arguments:
object
Example
{
  "amounts": {
    "return": [
      {
        "id": {
          "return": "object",
          "arguments": {}
        },
        "amount": {
          "return": "number",
          "arguments": {}
        },
        "bankAccount": {
          "return": {
            "id": {
              "return": "object",
              "arguments": {}
            },
            "category": {
              "return": "string",
              "arguments": {}
            },
            "isDefault": {
              "return": "boolean",
              "arguments": {}
            },
            "lastFour": {
              "return": "string",
              "arguments": {}
            },
            "nickname": {
              "return": "string",
              "arguments": {}
            }
          },
          "arguments": {}
        }
      }
    ],
    "arguments": {}
  },
  "balance": {
    "return": {
      "operatingOutstanding": {
        "return": "number",
        "arguments": {}
      },
      "operatingPaid": {
        "return": "number",
        "arguments": {}
      },
      "totalOutstanding": {
        "return": "number",
        "arguments": {}
      },
      "totalPaid": {
        "return": "number",
        "arguments": {}
      },
      "trustOutstanding": {
        "return": "number",
        "arguments": {}
      },
      "trustPaid": {
        "return": "number",
        "arguments": {}
      }
    },
    "arguments": {}
  },
  "client": {
    "return": {
      "id": {
        "return": "object",
        "arguments": {}
      },
      "address": {
        "return": {
          "id": {
            "return": "object",
            "arguments": {}
          },
          "city": {
            "return": "string",
            "arguments": {}
          },
          "line1": {
            "return": "string",
            "arguments": {}
          },
          "line2": {
            "return": "string",
            "arguments": {}
          },
          "state": {
            "return": "string",
            "arguments": {}
          },
          "zip": {
            "return": "string",
            "arguments": {}
          }
        }
      }
    }
  }
}

SubscriptionConnection: object

edges:
object
return:
arguments:
object
pageInfo:
object
return:
arguments:
object
Example
{
  "edges": {
    "return": [
      {
        "cursor": {
          "return": "string",
          "arguments": {}
        },
        "node": {
          "return": {
            "amounts": {
              "return": [
                {
                  "id": {
                    "return": "object",
                    "arguments": {}
                  },
                  "amount": {
                    "return": "number",
                    "arguments": {}
                  },
                  "bankAccount": {
                    "return": {
                      "id": {
                        "return": "object",
                        "arguments": {}
                      },
                      "category": {
                        "return": "string",
                        "arguments": {}
                      },
                      "isDefault": {
                        "return": "boolean",
                        "arguments": {}
                      },
                      "lastFour": {
                        "return": "string",
                        "arguments": {}
                      },
                      "nickname": {
                        "return": "string",
                        "arguments": {}
                      }
                    },
                    "arguments": {}
                  }
                }
              ],
              "arguments": {}
            },
            "balance": {
              "return": {
                "operatingOutstanding": {
                  "return": "number",
                  "arguments": {}
                },
                "operatingPaid": {
                  "return": "number",
                  "arguments": {}
                },
                "totalOutstanding": {
                  "return": "number",
                  "arguments": {}
                },
                "totalPaid": {
                  "return": "number",
                  "arguments": {}
                },
                "trustOutstanding": {
                  "return": "number",
                  "arguments": {}
                },
                "trustPaid": {
                  "return": "number",
                  "arguments": {}
                }
              },
              "arguments": {}
            },
            "client": {
              "return": {
                "id": {
                  "return": "object",
                  "arguments": {}
                },
                "address": {
                  "return": {
                    "id": {
                      "return": "object",
                      "arguments": {}
                    },
                    "city": {
                      "return": "string",
                      "arguments": {}
                    },
                    "line1": {
                      "return": "string",
                      "arguments": {}
                    },
                    "line2": {}
                  }
                }
              }
            }
          }
        }
      }
    ]
  }
}

SubscriptionEdge: object

cursor:
object
return:
arguments:
object
node:
object
return:
arguments:
object
Example
{
  "cursor": {
    "return": "string",
    "arguments": {}
  },
  "node": {
    "return": {
      "amounts": {
        "return": [
          {
            "id": {
              "return": "object",
              "arguments": {}
            },
            "amount": {
              "return": "number",
              "arguments": {}
            },
            "bankAccount": {
              "return": {
                "id": {
                  "return": "object",
                  "arguments": {}
                },
                "category": {
                  "return": "string",
                  "arguments": {}
                },
                "isDefault": {
                  "return": "boolean",
                  "arguments": {}
                },
                "lastFour": {
                  "return": "string",
                  "arguments": {}
                },
                "nickname": {
                  "return": "string",
                  "arguments": {}
                }
              },
              "arguments": {}
            }
          }
        ],
        "arguments": {}
      },
      "balance": {
        "return": {
          "operatingOutstanding": {
            "return": "number",
            "arguments": {}
          },
          "operatingPaid": {
            "return": "number",
            "arguments": {}
          },
          "totalOutstanding": {
            "return": "number",
            "arguments": {}
          },
          "totalPaid": {
            "return": "number",
            "arguments": {}
          },
          "trustOutstanding": {
            "return": "number",
            "arguments": {}
          },
          "trustPaid": {
            "return": "number",
            "arguments": {}
          }
        },
        "arguments": {}
      },
      "client": {
        "return": {
          "id": {
            "return": "object",
            "arguments": {}
          },
          "address": {
            "return": {
              "id": {
                "return": "object",
                "arguments": {}
              },
              "city": {
                "return": "string",
                "arguments": {}
              },
              "line1": {
                "return": "string",
                "arguments": {}
              },
              "line2": {
                "return": "string",
                "arguments": {}
              },
              "state": {}
            }
          }
        }
      }
    }
  }
}

SubscriptionEnds: object

amountPaid:
object
return:
Int
arguments:
object
never:
object
return:
arguments:
object
on:
object
return:
arguments:
object
payments:
object
return:
Int
arguments:
object
Example
{
  "amountPaid": {
    "return": "number",
    "arguments": {}
  },
  "never": {
    "return": "boolean",
    "arguments": {}
  },
  "on": {
    "return": "string",
    "arguments": {}
  },
  "payments": {
    "return": "number",
    "arguments": {}
  }
}

SubscriptionEndsInput: object

amountPaid:
Int

(Optional) The amount in cents that needs to be paid on the subscription for the subscription to be fulfilled.

never:

(Optional) If true, the subscription will continue to charge the client indefinitely.

on:

(Optional) The end date for the subscription. The client will be charged until this date is reached. This should be a date of the form 'YYYY-MM-DD'.

payments:
Int

(Optional) The number of payments the client needs to be charged for the subscription to be fulfilled.

Example
{
  "amountPaid": "number",
  "never": "boolean",
  "on": "string",
  "payments": "number"
}

SubscriptionFrequency: object

biweekly:
object
return:
arguments:
object
monthly:
object
return:
Int
arguments:
object
weekly:
object
return:
arguments:
object
yearly:
object
return:
arguments:
object
Example
{
  "biweekly": {
    "return": [
      "string"
    ],
    "arguments": {}
  },
  "monthly": {
    "return": [
      "number"
    ],
    "arguments": {}
  },
  "weekly": {
    "return": [
      "string"
    ],
    "arguments": {}
  },
  "yearly": {
    "return": [
      "string"
    ],
    "arguments": {}
  }
}

SubscriptionFrequencyInput: object

biweekly:

(Optional) A list of one day of the week on which the client will be charged every other week. Note, future work will allow for multiple days of the week to be specified.

Possible values: 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday', and 'sunday'.

monthly:
Int

(Optional) A list of one or two days of the month on which the client will be charged. Note, future work will allow for 3+ days of the month to be specified.

Possible values: integers between 1 and 31.

weekly:

(Optional) A list of one day of the week on which the client will be charged every week. Note, future work will allow for multiple days of the week to be specified.

Possible values: 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday', and 'sunday'.

yearly:

(Optional) A list of one day of the year on which the client will be charged. Note, future work will allow for multiple days of the year to be specified.

Possible values: dates of the form 'MM-DD' (e.g. '01-01' for January 1st).

Example
{
  "biweekly": [
    "string"
  ],
  "monthly": [
    "number"
  ],
  "weekly": [
    "string"
  ],
  "yearly": [
    "string"
  ]
}

Transaction: object

Defines a single Transaction. This is the payment that was actually sent to the bank, credit card processor, etc.

id:
object

A unique uuidv4 value for this object.

return:
ID
arguments:
object
achStatus:
object

(Nullable) If the Transaction was an ACH payment, this status represents the current state of the Transaction, 'A' => Pending | 'B' => Originated | 'R' => Returned | 'S' => Settled | 'V' => Voided.

return:
arguments:
object
aggregatePaymentLink:
object
return:
arguments:
object
amountProcessed:
object

The amount in cents that was processed for the Transaction.

return:
Int
arguments:
object
amountRefunded:
object

The amount in cents that was refunded for the Transaction.

return:
Int
arguments:
object
bankAccount:
object

The Bank Account that the Transaction was deposited into.

return:
arguments:
object
canRefund:
object
return:
arguments:
object
canVoid:
object
return:
arguments:
object
client:
object
return:
arguments:
object
createdOn:
object
return:
arguments:
object
depositId:
object
return:
arguments:
object
errorMessage:
object
return:
arguments:
object
firm:
object
return:
arguments:
object
lastFour:
object
return:
arguments:
object
matter:
object
return:
arguments:
object
paymentMethod:
object
return:
arguments:
object
payment:
object
return:
arguments:
object
paymentLink:
object
return:
arguments:
object
settledOn:
object

(Nullable) If the Transaction was an ACH payment, this will be set to a timestamp for when the payment was settled.

return:
arguments:
object
status:
object

The current status of the Transaction. Possible values: 'error' | 'originated' | 'pending' | 'refunded' | 'returned' | 'reversed' | 'settled' | 'successful' | 'voided'.

return:
arguments:
object
status_v2:
object

The current status of the Transaction.

return:
arguments:
object
storedPaymentMethod:
object
return:
arguments:
object
surchargeAmount:
object

The amount in cents that was paid for surcharging. This is not included in the amount so the total amount processed would be amount + surchargeAmount.

return:
Int
arguments:
object
surchargeAmountRefunded:
object

The amount in cents that was refunded for surcharging. This is not included in the amountRefunded so the total amount refunded would be amountRefunded + surchargeAmountRefunded.

return:
Int
arguments:
object
type:
object

The type of the transaction. Possible values: 'achPayment' | 'ccPayment' | 'chargeback' | 'error' | 'manualPayment' | 'refund' | 'reverse' | 'transfer' | 'void'.

return:
arguments:
object
updatedOn:
object

A Date object representing the last time this Transaction was updated.

return:
arguments:
object
Example
{
  "id": {
    "return": "object",
    "arguments": {}
  },
  "achStatus": {
    "return": "string",
    "arguments": {}
  },
  "aggregatePaymentLink": {
    "return": {
      "id": {
        "return": "object",
        "arguments": {}
      },
      "balance": {
        "return": {
          "operatingOutstanding": {
            "return": "number",
            "arguments": {}
          },
          "operatingPaid": {
            "return": "number",
            "arguments": {}
          },
          "totalOutstanding": {
            "return": "number",
            "arguments": {}
          },
          "totalPaid": {
            "return": "number",
            "arguments": {}
          },
          "trustOutstanding": {
            "return": "number",
            "arguments": {}
          },
          "trustPaid": {
            "return": "number",
            "arguments": {}
          }
        },
        "arguments": {}
      },
      "client": {
        "return": {
          "id": {
            "return": "object",
            "arguments": {}
          },
          "address": {
            "return": {
              "id": {
                "return": "object",
                "arguments": {}
              },
              "city": {
                "return": "string",
                "arguments": {}
              },
              "line1": {
                "return": "string",
                "arguments": {}
              },
              "line2": {
                "return": "string",
                "arguments": {}
              },
              "state": {
                "return": "string",
                "arguments": {}
              },
              "zip": {
                "return": "string",
                "arguments": {}
              }
            },
            "arguments": {}
          },
          "aggregatePaymentLinks": {
            "return": {
              "edges": {
                "return": [
                  {
                    "cursor": {
                      "return": "string",
                      "arguments": {}
                    },
                    "node": {
                      "return": {
                        "id": {
                          "return": "object",
                          "arguments": {}
                        },
                        "balance": {
                          "return": {}
                        }
                      }
                    }
                  }
                ]
              }
            }
          }
        }
      }
    }
  }
}

TransactionConnection: object

edges:
object
return:
arguments:
object
pageInfo:
object
return:
arguments:
object
Example
{
  "edges": {
    "return": [
      {
        "cursor": {
          "return": "string",
          "arguments": {}
        },
        "node": {
          "return": {
            "id": {
              "return": "object",
              "arguments": {}
            },
            "achStatus": {
              "return": "string",
              "arguments": {}
            },
            "aggregatePaymentLink": {
              "return": {
                "id": {
                  "return": "object",
                  "arguments": {}
                },
                "balance": {
                  "return": {
                    "operatingOutstanding": {
                      "return": "number",
                      "arguments": {}
                    },
                    "operatingPaid": {
                      "return": "number",
                      "arguments": {}
                    },
                    "totalOutstanding": {
                      "return": "number",
                      "arguments": {}
                    },
                    "totalPaid": {
                      "return": "number",
                      "arguments": {}
                    },
                    "trustOutstanding": {
                      "return": "number",
                      "arguments": {}
                    },
                    "trustPaid": {
                      "return": "number",
                      "arguments": {}
                    }
                  },
                  "arguments": {}
                },
                "client": {
                  "return": {
                    "id": {
                      "return": "object",
                      "arguments": {}
                    },
                    "address": {
                      "return": {
                        "id": {
                          "return": "object",
                          "arguments": {}
                        },
                        "city": {
                          "return": "string",
                          "arguments": {}
                        },
                        "line1": {
                          "return": "string",
                          "arguments": {}
                        },
                        "line2": {
                          "return": "string",
                          "arguments": {}
                        },
                        "state": {
                          "return": "string",
                          "arguments": {}
                        },
                        "zip": {
                          "return": "string",
                          "arguments": {}
                        }
                      },
                      "arguments": {}
                    },
                    "aggregatePaymentLinks": {
                      "return": {
                        "edges": {
                          "return": [
                            {
                              "cursor": {
                                "return": "string"
                              }
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    ]
  }
}

TransactionEdge: object

cursor:
object
return:
arguments:
object
node:
object
return:
arguments:
object
Example
{
  "cursor": {
    "return": "string",
    "arguments": {}
  },
  "node": {
    "return": {
      "id": {
        "return": "object",
        "arguments": {}
      },
      "achStatus": {
        "return": "string",
        "arguments": {}
      },
      "aggregatePaymentLink": {
        "return": {
          "id": {
            "return": "object",
            "arguments": {}
          },
          "balance": {
            "return": {
              "operatingOutstanding": {
                "return": "number",
                "arguments": {}
              },
              "operatingPaid": {
                "return": "number",
                "arguments": {}
              },
              "totalOutstanding": {
                "return": "number",
                "arguments": {}
              },
              "totalPaid": {
                "return": "number",
                "arguments": {}
              },
              "trustOutstanding": {
                "return": "number",
                "arguments": {}
              },
              "trustPaid": {
                "return": "number",
                "arguments": {}
              }
            },
            "arguments": {}
          },
          "client": {
            "return": {
              "id": {
                "return": "object",
                "arguments": {}
              },
              "address": {
                "return": {
                  "id": {
                    "return": "object",
                    "arguments": {}
                  },
                  "city": {
                    "return": "string",
                    "arguments": {}
                  },
                  "line1": {
                    "return": "string",
                    "arguments": {}
                  },
                  "line2": {
                    "return": "string",
                    "arguments": {}
                  },
                  "state": {
                    "return": "string",
                    "arguments": {}
                  },
                  "zip": {
                    "return": "string",
                    "arguments": {}
                  }
                },
                "arguments": {}
              },
              "aggregatePaymentLinks": {
                "return": {
                  "edges": {
                    "return": [
                      {
                        "cursor": {
                          "return": "string",
                          "arguments": {}
                        },
                        "node": {
                          "return": {}
                        }
                      }
                    ]
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}

TransactionPaymentMethod: string

object
ACH
object
CARD
object
CREDIT
object
DEBIT
object
MANUAL

TransactionStatus2: string

object
CHARGED_BACK
object
DEPOSITED
object
ERROR
object
FUNDS_IN_TRANSIT
object
HELD
object
PARTIALLY_REFUNDED
object
PENDING
object
REFUNDED
object
RETURNED
object
SUCCESSFUL
object
VOIDED

UpcomingPayment: object

amount:
object
return:
arguments:
object
billDate:
object
return:
arguments:
object
Example
{
  "amount": {
    "return": "number",
    "arguments": {}
  },
  "billDate": {
    "return": "string",
    "arguments": {}
  }
}

UpdateAddressInput: object

Defines the update parameters for updating an Address.

id:
ID

(Required) The uuidv4 id of the Address.

city:

(Optional) The city for this Address.

line1:

(Optional) The first line of the Address.

line2:

(Optional) The second line of the Address, if necessary.

state:

(Optional) The state for this Address.

zip:

(Optional) The zip for this Address.

Example
{
  "id": "object",
  "city": "string",
  "line1": "string",
  "line2": "string",
  "state": "string",
  "zip": "string"
}

UpdateAggregatePaymentLinkInput: object

id:
ID
externalId:
memo:
paymentLinkIds:
Example
{
  "id": "object",
  "externalId": "string",
  "memo": "string",
  "paymentLinkIds": [
    "string"
  ]
}

UpdateAmountInput: object

Defines the structure for updating an amount.

amount:
Int

(Required) Integer value in cents.

bankAccountId:

(Required) A uuidv4 id for the Bank Account to associate the amount with.

Example
{
  "amount": "number",
  "bankAccountId": "string"
}

UpdateBankAccountInput: object

id:
ID

(Required) The uuidv4 id of the Bank Account.

nickname:

(Optional) The new nickname for the bank account.

Example
{
  "id": "object",
  "nickname": "string"
}

UpdateClientInput: object

id:
ID

(Required) The uuidv4 id of the Client.

address:

(Optional) If defined, updates or creates an address for the Client to exactly equal what is passed in.

clientName:

(Optional) The new value for the client name.

email:

(Optional) The primary email address for contacting this Client.

externalId:

(Optional) An externalId for querying down the road.

firstName:

(Optional) The first name of the Client.

lastName:

(Optional) The last name of the Client.

phone:

(Optional) The primary contact to create and attach to this Client.

primaryContactId:
ID

(Optional) The id of the contact to make the Client's primary contact.

qbCustomerRef:
qbRealmId:
surchargeEnabled:

(Optional) Wether or not to default surcharging on payments for this Client. If undefined, defaults to the Firm's settings.

Example
{
  "id": "object",
  "address": {
    "city": "string",
    "line1": "string",
    "line2": "string",
    "state": "string",
    "zip": "string"
  },
  "clientName": "string",
  "email": "string",
  "externalId": "string",
  "firstName": "string",
  "lastName": "string",
  "phone": "string",
  "primaryContactId": "object",
  "qbCustomerRef": "string",
  "qbRealmId": "string",
  "surchargeEnabled": "boolean"
}

UpdateContactInput: object

id:
ID

(Required) The uuidv4 id of the Contact to update.

address:

(Optional) The address to create or update the Contact with.

email:

(Optional) The email for this Contact.

firstName:

(Optional) The first name of the Contact.

isPrimaryContact:

(Optional) Wether or not the Contact is a primary Contact. If null, defaults to false. When true, updates the Clients primary Contact to this Contact.

lastName:

(Optional) The last name of the Contact.

phone:

(Optional) The phone number of the Contact.

Example
{
  "id": "object",
  "address": {
    "city": "string",
    "line1": "string",
    "line2": "string",
    "state": "string",
    "zip": "string"
  },
  "email": "string",
  "firstName": "string",
  "isPrimaryContact": "boolean",
  "lastName": "string",
  "phone": "string"
}

UpdateMatterInput: object

Defines the input object for updating a Matter.

id:
ID

(Required) The uuidv4 id of the Matter.

externalId:
ID

(Optional) An externalId for querying down the road.

name:

(Optional) A secondary Client to associate with the Matter.

Example
{
  "id": "object",
  "externalId": "object",
  "name": "string"
}

UpdatePaymentLinkInput: object

id:
ID
amounts:
clientId:
ID
externalId:
ID
matterId:
ID
memo:
operating:
Int
paymentMethodsAllowed:
qbEnabled:
qbInvoiceRef:
qbRealmId:
sendReceipts:
trust:
Int
Example
{
  "id": "object",
  "amounts": [
    {
      "amount": "number",
      "bankAccountId": "string"
    }
  ],
  "clientId": "object",
  "externalId": "object",
  "matterId": "object",
  "memo": "string",
  "operating": "number",
  "paymentMethodsAllowed": [
    "string"
  ],
  "qbEnabled": "boolean",
  "qbInvoiceRef": "string",
  "qbRealmId": "string",
  "sendReceipts": "boolean",
  "trust": "number"
}

UpdateScheduleInput: object

ends:

(Optional) An object that defines when the subscription ends. This object should contain one (and only one) of the following keys: 'amountPaid', 'never', 'on', or 'payments'.

When the subscription ends is updated, the original termination type can not be changed. For example, if the subscription ends was 'amountPaid', you can not update the ends to 'never' or 'on'.

frequency:

(Optional) The frequency of the subscription. This object should contain one (and only one) of the following keys: 'biweekly', 'monthly', 'weekly', or 'yearly'.

Example
{
  "ends": {
    "amountPaid": "number",
    "never": "boolean",
    "on": "string",
    "payments": "number"
  },
  "frequency": {
    "biweekly": [
      "string"
    ],
    "monthly": [
      "number"
    ],
    "weekly": [
      "string"
    ],
    "yearly": [
      "string"
    ]
  }
}

UpdateStoredPaymentMethodInput: object

id:
ID

(Required) The uuidv4 id of the Stored Payment Method.

defaultEmail:
nickname:

(Required) A string value representing a new name for the Stored Payment Method.

Example
{
  "id": "object",
  "defaultEmail": "string",
  "nickname": "string"
}

UpdateSubscriptionInput: object

amounts:

(Optional) A list of one amount object. This represents the amount that will be charged on each billing cycle. Subscriptions can only have a single bank account/amount at this time.

If this field is provided, operating and trust must be omitted.

id:

(Required) The uuidv4 id of the Subscription.

matterId:

(Optional) The id of a Matter to associate the subscription with.

operating:
Int

(Optional) The amount in cents to charge the client on each billing cycle. The amount will be deposited into the firm's default operating account.

If this field is provided, amounts and trust must be omitted.

schedule:

(Optional) An object defining the schedule of the subscription. When the subscription charges the client and when the subscription is considered fulfilled.

storedPaymentMethodId:

(Optional) The id of a stored payment method to set on the subscription. If this is provided, the status of the subscription will be 'active' immediately.

If this is omitted, the subscription url that is returned should be used to collect the payment method from a firm's client.

trust:
Int

(Optional) The amount in cents to charge the client on each billing cycle. The amount will be deposited into the firm's default trust account.

If this field is provided, amounts and operating must be omitted.

Example
{
  "amounts": [
    {
      "amount": "number",
      "bankAccountId": "string"
    }
  ],
  "id": "string",
  "matterId": "string",
  "operating": "number",
  "schedule": {
    "ends": {
      "amountPaid": "number",
      "never": "boolean",
      "on": "string",
      "payments": "number"
    },
    "frequency": {
      "biweekly": [
        "string"
      ],
      "monthly": [
        "number"
      ],
      "weekly": [
        "string"
      ],
      "yearly": [
        "string"
      ]
    }
  },
  "storedPaymentMethodId": "string",
  "trust": "number"
}

VoidOrRefundTransactionInput: object

sendReceipt:

sendReceipt=true will definitely send a receipt and sendReceipt=false will definitely not send a receipt. Unset will fallback to Firm's defaults.

transactionId:

The id of the transaction to void or refund.

Example
{
  "sendReceipt": "boolean",
  "transactionId": "string"
}

VoidTransactionInput: object

sendReceipt:

sendReceipt=true will definitely send a receipt and sendReceipt=false will definitely not send a receipt. Unset will fallback to Firm's defaults.

transactionId:

The id of the transaction to void.

Example
{
  "sendReceipt": "boolean",
  "transactionId": "string"
}