Skip to main content

The Griffin API (0.3)

Download OpenAPI specification:Download

Connectivity

List URLs

Contains various global URL paths. Follow api-key-url to discover your organization-url.

Authorizations:
api-key-auth

Responses

Response samples

Content type
application/json
{
  • "organizations-url": "/v0/organizations",
  • "users-url": "/v0/users",
  • "roles-url": "/v0/roles",
  • "session-url": "/v0/session",
  • "api-key-url": "/v0/api-keys/ak.ICAgICAgYXBpLWtleS1pZA",
  • "organization-url": "/v0/organizations/og.IG9yZ2FuaXphdGlvbi1pZA"
}

Ping

Check your connection to the Griffin API.

Responses

Legal Persons

Get legal person

Yields the legal-person.

Authorizations:
api-key-auth
path Parameters
legal-person-id
required
string

Responses

Response samples

Content type
application/json
{
  • "individual-verifications-url": "/v0/individuals/lp.IGxlZ2FsLXBlcnNvbi1pZA/verifications",
  • "latest-decision": {
    },
  • "legal-person-type": "individual",
  • "display-name": "Company name",
  • "application-status": "referred",
  • "legal-person-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
  • "legal-person-decisions-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA/decisions",
  • "status-changed-at": "2019-08-24T14:15:22Z",
  • "created-at": "2019-08-24T14:15:22Z",
  • "legal-person-claims-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA/claims",
  • "legal-person-bank-payees-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA/bank/payees",
  • "legal-person-verifications-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA/verifications",
  • "corporation-verifications-url": "/v0/corporations/lp.IGxlZ2FsLXBlcnNvbi1pZA/verifications",
  • "bank-product-types-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA/bank/product-types",
  • "legal-person-documents-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA/documents",
  • "bank-accounts-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA/bank/accounts"
}

Update legal person

Updates the legal-person.

Authorizations:
api-key-auth
path Parameters
legal-person-id
required
string
Request Body schema: application/json
display-name
string (display-name) non-empty
application-status
string (application-status)
Enum: "referred" "declined" "submitted" "accepted"

Responses

Request samples

Content type
application/json
{
  • "display-name": "string",
  • "application-status": "referred"
}

Response samples

Content type
application/json
{
  • "individual-verifications-url": "/v0/individuals/lp.IGxlZ2FsLXBlcnNvbi1pZA/verifications",
  • "latest-decision": {
    },
  • "legal-person-type": "individual",
  • "display-name": "Company name",
  • "application-status": "referred",
  • "legal-person-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
  • "legal-person-decisions-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA/decisions",
  • "status-changed-at": "2019-08-24T14:15:22Z",
  • "created-at": "2019-08-24T14:15:22Z",
  • "legal-person-claims-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA/claims",
  • "legal-person-bank-payees-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA/bank/payees",
  • "legal-person-verifications-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA/verifications",
  • "corporation-verifications-url": "/v0/corporations/lp.IGxlZ2FsLXBlcnNvbi1pZA/verifications",
  • "bank-product-types-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA/bank/product-types",
  • "legal-person-documents-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA/documents",
  • "bank-accounts-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA/bank/accounts"
}

List legal persons

Yields a list of all legal-persons in the organization.

Authorizations:
api-key-auth
path Parameters
organization-id
required
string

Responses

Response samples

Content type
application/json
{
  • "legal-persons": [
    ]
}

Create legal person

Creates a new Legal Person. A collection of Claims may be provided.

Authorizations:
api-key-auth
path Parameters
organization-id
required
string
Request Body schema: application/json
display-name
required
string (display-name) non-empty
legal-person-type
required
string (legal-person-type)
Enum: "individual" "corporation"
Array of mobile-number (object) or individual-identity (object) or sole-trader (object) or uk-company-register (object) or company-telephone-number (object) or person-with-significant-control (object) or company-email-address (object) or uk-financial-services-register (object) or contact-details (object) or company-website (object) or director (object) or alternative-number (object) or (individual-residence (building-name (object) or building-number (object))) (claim)

Responses

Request samples

Content type
application/json
{
  • "display-name": "string",
  • "legal-person-type": "individual",
  • "claims": [
    ]
}

Response samples

Content type
application/json
{
  • "individual-verifications-url": "/v0/individuals/lp.IGxlZ2FsLXBlcnNvbi1pZA/verifications",
  • "latest-decision": {
    },
  • "legal-person-type": "individual",
  • "display-name": "Company name",
  • "application-status": "referred",
  • "legal-person-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
  • "legal-person-decisions-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA/decisions",
  • "status-changed-at": "2019-08-24T14:15:22Z",
  • "created-at": "2019-08-24T14:15:22Z",
  • "legal-person-claims-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA/claims",
  • "legal-person-bank-payees-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA/bank/payees",
  • "legal-person-verifications-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA/verifications",
  • "corporation-verifications-url": "/v0/corporations/lp.IGxlZ2FsLXBlcnNvbi1pZA/verifications",
  • "bank-product-types-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA/bank/product-types",
  • "legal-person-documents-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA/documents",
  • "bank-accounts-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA/bank/accounts"
}

Claims

List claims

Yields a list of all current claims about this Legal Person.

Authorizations:
api-key-auth
path Parameters
legal-person-id
required
string

Responses

Response samples

Content type
application/json
{
  • "claims": [
    ]
}

Create claim

Creates a new claim about a Legal Person.

Authorizations:
api-key-auth
path Parameters
legal-person-id
required
string
Request Body schema: application/json
Any of
mobile-number
required
string (mobile-number) (\+[1-9])?\d{1,14}
claim-type
required
string
Value: "mobile-number"

Responses

Request samples

Content type
application/json
Example
{
  • "mobile-number": "+442012345678",
  • "claim-type": "mobile-number"
}

Response samples

Content type
application/json
Example
{
  • "mobile-number": "+442012345678",
  • "claim-type": "mobile-number"
}

Workflows

List organization workflows

Lists workflows for use when creating a verification.

Authorizations:
api-key-auth
path Parameters
organization-id
required
string

Responses

Response samples

Content type
application/json
{
  • "workflows": [
    ]
}

Get workflow

Fetch the workflow.

Authorizations:
api-key-auth
path Parameters
workflow-id
required
string

Responses

Response samples

Content type
application/json
{
  • "workflow-url": "/v0/workflows/wf.ICAgICB3b3JrZmxvdy1pZA",
  • "display-name": "string",
  • "legal-person-type": "individual",
  • "created-at": "2019-08-24T14:15:22Z",
  • "workflow-rules": [
    ]
}

Verifications

List verifications for a legal person

List verifications for the given legal person.

Authorizations:
api-key-auth
path Parameters
legal-person-id
required
string

Responses

Response samples

Content type
application/json
{
  • "verifications": [
    ]
}

Perform verification of a legal person

Initiates verification of the subject legal person.

The request body must include a workflow-url to determine checks to be performed by the verification. The workflow specified determines which claims must exist for the subject legal person, as identified in the request URL, and any associated legal persons (i.e. directors and people with significant control of a corporation). The requirements for the sample workflows are:

Sample Workflow

This subject legal person must have a legal-person-type of corporation. It must have a uk-company-register claim and at least one director claim. It can optionally have a company-website claim, and one or more person-with-significant-control claims.

Each individual referenced by a director or person-with-significant-control claim must also have contact-details, individual-identity, and individual-residence claims.

Sample Individual Workflow

The subject legal person must have a legal-person-type of individual and the following claims: contact-details, individual-identity, individual-residence, mobile-number. It may optionally have the alternative-number claim.

Sample Sole Trader Workflow

The requirements are as per the Sample Individual Workflow above, except the subject legal person must have the sole-trader claim.


A 201 Created response indicates these requirements are met and verification will proceed. Otherwise, a 422 Unprocessable Entity response indicates there are insufficient claims, and verification cannot proceed.

Once a verification is created, the system will perform checks on the claim details. The status of check processing is indicated by the verification-status in the response body. Initially it will be pending, and will transition through in-progress to a final status of checks-complete.

A verification-status of failed indicates something went wrong during check processing. You can initiate another verification to retry the check processing.

Authorizations:
api-key-auth
path Parameters
legal-person-id
required
string
Request Body schema: application/json
workflow-url
required
string (workflow-url)

Responses

Request samples

Content type
application/json
{
  • "workflow-url": "/v0/workflows/wf.ICAgICB3b3JrZmxvdy1pZA"
}

Get verification

Fetch the verification.

Authorizations:
api-key-auth
path Parameters
verification-id
required
string

Responses

Response samples

Content type
application/json
{
  • "created-at": "2019-08-24T14:15:22Z",
  • "legal-person-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
  • "verification-status": "in-progress",
  • "verification-url": "/v0/verifications/vn.IHZlcmlmaWNhdGlvbi1pZA",
  • "verification-checks-url": "/v0/verifications/vn.IHZlcmlmaWNhdGlvbi1pZA/checks",
  • "risk-rating": "high-risk",
  • "updated-at": "2019-08-24T14:15:22Z",
  • "workflow-url": "/v0/workflows/wf.ICAgICB3b3JrZmxvdy1pZA"
}

Decisions

List decisions

Lists all decisions for the given legal-person.

Authorizations:
api-key-auth
path Parameters
legal-person-id
required
string

Responses

Response samples

Content type
application/json
{
  • "decisions": [
    ]
}

Create decision

Creates a decision against the legal person.

The provided verification must have a verification-status of checks-complete, otherwise a 422 is served.

When a decision is successfully created, the legal person's application-status is updated accordingly.

Multiple decisions may be made against the same legal person.

Authorizations:
api-key-auth
path Parameters
legal-person-id
required
string
Request Body schema: application/json
verification-url
required
string (verification-url)
decision-outcome
required
string (decision-outcome)
Enum: "accepted" "declined"
decision-notes
required
string (decision-notes)

Free text to hold reasons for making the decision.

Responses

Request samples

Content type
application/json
{
  • "verification-url": "string",
  • "decision-outcome": "accepted",
  • "decision-notes": "string"
}

Response samples

Content type
application/json
{
  • "verification-url": "string",
  • "decision-outcome": "accepted",
  • "decision-maker": "system",
  • "decision-notes": "string",
  • "created-at": "2019-08-24T14:15:22Z",
  • "decision-user-url": "/v0/users/ur.ICAgICAgICAgdXNlci1pZA",
  • "decision-user-username": "user@example.com"
}

Companies House

Lookup company

Lookup Companies House company by company number. Includes information about the company, its directors, and persons with significant control.

Authorizations:
api-key-auth
path Parameters
company-number
required
string non-empty
Example: 10842931

UK Companies House company number

Responses

Response samples

Content type
application/json
{
  • "company-address": {
    },
  • "date-of-latest-accounts": "2019-08-24",
  • "entity-name": "string",
  • "directors": [],
  • "date-of-latest-confirmation-statement": "2019-08-24",
  • "corporation-type": "private-limited-guarant-nsc-limited-exemption",
  • "company-status": "dissolved",
  • "accounts-overdue": true,
  • "persons-with-significant-control": [],
  • "confirmation-statement-overdue": true,
  • "date-of-incorporation": "2019-08-24",
  • "entity-registration-number": "string"
}

Bank Accounts

Get bank account

Fetch a bank account

Authorizations:
api-key-auth
path Parameters
bank-account-id
required
string

Responses

Response samples

Content type
application/json
{
  • "account-payments-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA/payments",
  • "bank-product-type": "client-money-account",
  • "display-name": "Reserve a/c",
  • "controller-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
  • "account-status": "closing",
  • "owner-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
  • "created-at": "2019-08-24T14:15:22Z",
  • "close-account-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA/actions/close",
  • "available-balance": {
    },
  • "bank-addresses": [
    ],
  • "account-transactions-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA/transactions",
  • "account-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA",
  • "beneficiary-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
  • "account-balance": {
    }
}

Update a bank-account

Update a bank-account

Authorizations:
api-key-auth
path Parameters
bank-account-id
required
string
Request Body schema: application/json
display-name
required
string (display-name) non-empty

Responses

Request samples

Content type
application/json
{
  • "display-name": "string"
}

Response samples

Content type
application/json
{
  • "account-payments-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA/payments",
  • "bank-product-type": "client-money-account",
  • "display-name": "Reserve a/c",
  • "controller-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
  • "account-status": "closing",
  • "owner-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
  • "created-at": "2019-08-24T14:15:22Z",
  • "close-account-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA/actions/close",
  • "available-balance": {
    },
  • "bank-addresses": [
    ],
  • "account-transactions-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA/transactions",
  • "account-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA",
  • "beneficiary-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
  • "account-balance": {
    }
}

Close a bank account

Close a bank account

Authorizations:
api-key-auth
path Parameters
bank-account-id
required
string

Responses

Response samples

Content type
application/json
{
  • "account-payments-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA/payments",
  • "bank-product-type": "client-money-account",
  • "display-name": "Reserve a/c",
  • "controller-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
  • "account-status": "closing",
  • "owner-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
  • "created-at": "2019-08-24T14:15:22Z",
  • "close-account-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA/actions/close",
  • "available-balance": {
    },
  • "bank-addresses": [
    ],
  • "account-transactions-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA/transactions",
  • "account-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA",
  • "beneficiary-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
  • "account-balance": {
    }
}

List legal person bank accounts

Yields a list of bank accounts where the beneficiary is this legal person.

Authorizations:
api-key-auth
path Parameters
legal-person-id
required
string

Responses

Response samples

Content type
application/json
{
  • "accounts": [
    ]
}

Create bank account

POST creates a new bank account. Yields the same as GET to the [Bank] resource.

Authorizations:
api-key-auth
path Parameters
legal-person-id
required
string
Request Body schema: application/json
bank-product-type
required
string (bank-product-type)
Enum: "client-money-account" "safeguarding-account" "operational-account"
display-name
required
string (display-name) non-empty

Responses

Request samples

Content type
application/json
{
  • "bank-product-type": "client-money-account",
  • "display-name": "string"
}

Response samples

Content type
application/json
{
  • "account-payments-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA/payments",
  • "bank-product-type": "client-money-account",
  • "display-name": "Reserve a/c",
  • "controller-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
  • "account-status": "closing",
  • "owner-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
  • "created-at": "2019-08-24T14:15:22Z",
  • "close-account-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA/actions/close",
  • "available-balance": {
    },
  • "bank-addresses": [
    ],
  • "account-transactions-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA/transactions",
  • "account-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA",
  • "beneficiary-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
  • "account-balance": {
    }
}

List bank accounts

Yields a list of all bank accounts under the control of this Organization.

Authorizations:
api-key-auth
path Parameters
organization-id
required
string

Responses

Response samples

Content type
application/json
{
  • "accounts": [
    ]
}

List customer bank accounts

Lists all customer bank accounts under the control of this Organization.

Authorizations:
api-key-auth
path Parameters
organization-id
required
string

Responses

Response samples

Content type
application/json
{
  • "accounts": [
    ]
}

Payments

List bank account payments

Lists payments made from a bank account.

Authorizations:
api-key-auth
path Parameters
bank-account-id
required
string

Responses

Response samples

Content type
application/json
{
  • "payments": [
    ]
}

Create payment

Registers a new payment request for the bank account

Authorizations:
api-key-auth
path Parameters
bank-account-id
required
string
Request Body schema: application/json
payee-url
required
string (payee-url)
required
object (money-amount)
payment-reference
string (payment-reference) [ 1 .. 35 ] characters

Responses

Request samples

Content type
application/json
{
  • "payee-url": "/v0/payees/pe.ICAgICAgICBwYXllZS1pZA",
  • "payment-amount": {
    },
  • "payment-reference": "test reference"
}

Response samples

Content type
application/json
{
  • "payment-submission-url": "/v0/payments/pm.ICAgICAgcGF5bWVudC1pZA/submission",
  • "payee-url": "/v0/payees/pe.ICAgICAgICBwYXllZS1pZA",
  • "payment-status": "failed",
  • "account-number": "12345678",
  • "account-holder": "string",
  • "payment-direction": "inbound-payment",
  • "bank-id": "123456",
  • "created-at": "2019-08-24T14:15:22Z",
  • "payment-url": "/v0/payments/pm.ICAgICAgcGF5bWVudC1pZA",
  • "payment-reference": "test reference",
  • "payment-amount": {
    },
  • "account-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA"
}

List payee payments

Lists payments made to a payee.

Authorizations:
api-key-auth
path Parameters
payee-id
required
string

Responses

Response samples

Content type
application/json
{
  • "payments": [
    ]
}

Get payment

Yields payment details

Authorizations:
api-key-auth
path Parameters
payment-id
required
string

Responses

Response samples

Content type
application/json
{
  • "payment-submission-url": "/v0/payments/pm.ICAgICAgcGF5bWVudC1pZA/submission",
  • "payee-url": "/v0/payees/pe.ICAgICAgICBwYXllZS1pZA",
  • "payment-status": "failed",
  • "account-number": "12345678",
  • "account-holder": "string",
  • "payment-direction": "inbound-payment",
  • "bank-id": "123456",
  • "created-at": "2019-08-24T14:15:22Z",
  • "payment-url": "/v0/payments/pm.ICAgICAgcGF5bWVudC1pZA",
  • "payment-reference": "test reference",
  • "payment-amount": {
    },
  • "account-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA"
}

Submit payment

Submits an outgoing payment.

Authorizations:
api-key-auth
path Parameters
payment-id
required
string

Responses

Response samples

Content type
application/json
{
  • "payment-submission-url": "/v0/payments/pm.ICAgICAgcGF5bWVudC1pZA/submission",
  • "payee-url": "/v0/payees/pe.ICAgICAgICBwYXllZS1pZA",
  • "payment-status": "failed",
  • "account-number": "12345678",
  • "account-holder": "string",
  • "payment-direction": "inbound-payment",
  • "bank-id": "123456",
  • "created-at": "2019-08-24T14:15:22Z",
  • "payment-url": "/v0/payments/pm.ICAgICAgcGF5bWVudC1pZA",
  • "payment-reference": "test reference",
  • "payment-amount": {
    },
  • "account-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA"
}

Transactions

List transactions

Yields the list of bank account transactions.

Authorizations:
api-key-auth
path Parameters
bank-account-id
required
string

Responses

Response samples

Content type
application/json
{
  • "account-transactions": [
    ],
  • "account-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA"
}

Payees

List legal person payees

Lists payees belonging to the legal person.

Authorizations:
api-key-auth
path Parameters
legal-person-id
required
string

Responses

Response samples

Content type
application/json
{
  • "payees": [
    ]
}

Create payee

Registers a new payee for the customer

Authorizations:
api-key-auth
path Parameters
legal-person-id
required
string
Request Body schema: application/json
account-holder
required
string (account-holder) non-empty

The name of the account holder.

account-number
required
string (account-number)
bank-id
required
string (bank-id) = 6 characters ^[a-zA-Z0-9]*$

Responses

Request samples

Content type
application/json
{
  • "account-holder": "string",
  • "account-number": "12345678",
  • "bank-id": "123456"
}

Response samples

Content type
application/json
{
  • "payee-url": "/v0/payees/pe.ICAgICAgICBwYXllZS1pZA",
  • "account-number": "12345678",
  • "account-holder": "string",
  • "legal-person-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
  • "bank-id": "123456",
  • "created-at": "2019-08-24T14:15:22Z",
  • "account-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA",
  • "payee-status": "deactivated",
  • "payee-payments-url": "/v0/payees/pe.ICAgICAgICBwYXllZS1pZA/payments",
  • "country-code": "GB"
}

Get payee

Yields payee details

Authorizations:
api-key-auth
path Parameters
payee-id
required
string

Responses

Response samples

Content type
application/json
{
  • "payee-url": "/v0/payees/pe.ICAgICAgICBwYXllZS1pZA",
  • "account-number": "12345678",
  • "account-holder": "string",
  • "legal-person-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
  • "bank-id": "123456",
  • "created-at": "2019-08-24T14:15:22Z",
  • "account-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA",
  • "payee-status": "deactivated",
  • "payee-payments-url": "/v0/payees/pe.ICAgICAgICBwYXllZS1pZA/payments",
  • "country-code": "GB"
}

Update payee

Updates an existing payee.

A payee can be deactivated by updating the payee-status of an active payee to deactivated. Any attempt to create or submit a payment to a deactivated payee will fail.

A 422 is served when attempting to deactivate an already-deactivated payee.

Authorizations:
api-key-auth
path Parameters
payee-id
required
string
Request Body schema: application/json
payee-status
required
string (payee-status)
Value: "deactivated"

Responses

Request samples

Content type
application/json
{
  • "payee-status": "deactivated"
}

Response samples

Content type
application/json
{
  • "payee-url": "/v0/payees/pe.ICAgICAgICBwYXllZS1pZA",
  • "account-number": "12345678",
  • "account-holder": "string",
  • "legal-person-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
  • "bank-id": "123456",
  • "created-at": "2019-08-24T14:15:22Z",
  • "account-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA",
  • "payee-status": "deactivated",
  • "payee-payments-url": "/v0/payees/pe.ICAgICAgICBwYXllZS1pZA/payments",
  • "country-code": "GB"
}

Organizations

Get organization

Yields the organization details

Authorizations:
api-key-auth
path Parameters
organization-id
required
string

Responses

Response samples

Content type
application/json
{
  • "own-legal-person-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
  • "organization-mode": "test-mode",
  • "organization-memberships-url": "/v0/organizations/og.IG9yZ2FuaXphdGlvbi1pZA/memberships",
  • "organization-customer-bank-accounts-url": "/v0/organizations/og.IG9yZ2FuaXphdGlvbi1pZA/bank/accounts/customer",
  • "organization-invitations-url": "/v0/organizations/og.IG9yZ2FuaXphdGlvbi1pZA/invitations",
  • "display-name": "Company Org",
  • "organization-api-keys-url": "/v0/organizations/og.IG9yZ2FuaXphdGlvbi1pZA/api-keys",
  • "organization-live-access-url": "/v0/organizations/og.IG9yZ2FuaXphdGlvbi1pZA/live-access",
  • "organization-workflows-url": "/v0/organizations/og.IG9yZ2FuaXphdGlvbi1pZA/workflows",
  • "organization-bank-accounts-url": "/v0/organizations/og.IG9yZ2FuaXphdGlvbi1pZA/bank/accounts",
  • "available-roles": [
    ],
  • "organization-url": "/v0/organizations/og.IG9yZ2FuaXphdGlvbi1pZA",
  • "organization-verifications-url": "/v0/organizations/og.IG9yZ2FuaXphdGlvbi1pZA/verifications",
  • "organization-individuals-url": "/v0/organizations/og.IG9yZ2FuaXphdGlvbi1pZA/individuals",
  • "organization-corporations-url": "/v0/organizations/og.IG9yZ2FuaXphdGlvbi1pZA/corporations",
  • "organization-legal-persons-url": "/v0/organizations/og.IG9yZ2FuaXphdGlvbi1pZA/legal-persons"
}

Users

Get user

Yields the User resource.

Authorizations:
api-key-auth
path Parameters
user-id
required
string

Responses

Response samples

Content type
application/json
{
  • "user-email": "user@example.com",
  • "user-url": "/v0/users/ur.ICAgICAgICAgdXNlci1pZA",
  • "user-username": "user@example.com",
  • "api-keys-url": "/v0/organizations/og.IG9yZ2FuaXphdGlvbi1pZA/api-keys",
  • "user-memberships-url": "/v0/users/ur.ICAgICAgICAgdXNlci1pZA/memberships",
  • "given-name": "string",
  • "surname": "string"
}

Roles

List membership roles

Returns a list of all roles assigned to this member of the organization.

Authorizations:
api-key-auth
path Parameters
membership-id
required
string

Responses

Response samples

Content type
application/json
{
  • "roles": [
    ]
}

Update role

Sets the roles assigned to the organization member to the list of roles provided.

A 422 is served if any of the given roles does not exist or does not appear in the Organization's available-roles.

Authorizations:
api-key-auth
path Parameters
membership-id
required
string
Request Body schema: application/json
role-urls
required
Array of strings (role-url)

Responses

Request samples

Content type
application/json
{
  • "role-urls": [
    ]
}

Response samples

Content type
application/json
{
  • "roles": [
    ]
}

List roles

Yields a list of all Role resources.

Responses

Response samples

Content type
application/json
{
  • "roles": [
    ]
}

Get role

Yields the Role resource.

path Parameters
role-id
required
string

Responses

Response samples

Content type
application/json
{
  • "display-name": "string",
  • "description": "string",
  • "role-url": "/v0/roles/re.ICAgICAgICAgcm9sZS1pZA"
}

Memberships

Get membership

Yields the Membership resource.

Authorizations:
api-key-auth
path Parameters
membership-id
required
string

Responses

Response samples

Content type
application/json
{
  • "membership-url": "/v0/memberships/mp.ICAgbWVtYmVyc2hpcC1pZA",
  • "membership-roles-url": "/v0/memberships/mp.ICAgbWVtYmVyc2hpcC1pZA/roles",
  • "organization": {
    },
  • "roles": [
    ],
  • "user": {
    },
  • "created-at": "2019-08-24T14:15:22Z"
}

Delete membership

Removes a user from an organization.

Authorizations:
api-key-auth
path Parameters
membership-id
required
string

Responses

List organization memberships

Returns a list of all users which are current members of the organization. Each user in the list has the same representation as the respective [User] resource.

Authorizations:
api-key-auth
path Parameters
organization-id
required
string

Responses

Response samples

Content type
application/json
{
  • "memberships": [
    ]
}

List user memberships

Returns a list of all organizations where this user is a current member. Each organization in the list has the same representation as the respective [Organization] resource.

Authorizations:
api-key-auth
path Parameters
user-id
required
string

Responses

Response samples

Content type
application/json
{
  • "memberships": [
    ]
}

API keys

View and manage your API keys. The api-key-secret field is only shown once when created. We cannot recover the value.

You should store it securely.

Pass an Authorization header with GriffinAPIKey api-key-secret to authenticate.

Get API key

Returns the API key without api-key-secret.

Authorizations:
api-key-auth
path Parameters
api-key-id
required
string

Responses

Response samples

Content type
application/json
{
  • "api-key-url": "/v0/api-keys/ak.ICAgICAgYXBpLWtleS1pZA",
  • "api-key-name": "buildserver",
  • "api-key-live?": true,
  • "organization-url": "/v0/organizations/og.IG9yZ2FuaXphdGlvbi1pZA",
  • "user-url": "/v0/users/ur.ICAgICAgICAgdXNlci1pZA",
  • "created-at": "2019-08-24T14:15:22Z"
}

Delete API key

Deletes the API Key. This operation cannot be undone.

Authorizations:
api-key-auth
path Parameters
api-key-id
required
string

Responses

List API keys

List all active API keys in your organization.

Authorizations:
api-key-auth
path Parameters
organization-id
required
string

Responses

Response samples

Content type
application/json
{
  • "api-keys": [
    ]
}

Create API Key

Create a new API key. This is the only time api-key-secret is shown.

Authorizations:
api-key-auth
path Parameters
organization-id
required
string
Request Body schema: application/json
api-key-name
required
string (api-key-name) non-empty

The name of the API Key. Cannot contain whitespace.

Responses

Request samples

Content type
application/json
{
  • "api-key-name": "string"
}

Response samples

Content type
application/json
{
  • "api-key-url": "/v0/api-keys/ak.ICAgICAgYXBpLWtleS1pZA",
  • "api-key-name": "buildserver",
  • "api-key-live?": true,
  • "organization-url": "/v0/organizations/og.IG9yZ2FuaXphdGlvbi1pZA",
  • "user-url": "/v0/users/ur.ICAgICAgICAgdXNlci1pZA",
  • "created-at": "2019-08-24T14:15:22Z",
  • "api-key-secret": "g-test-buildserver-RrUZ5fUG4pSKwYVVG1C3Ft1xrMRxy1T7KUIyTva5bTk"
}

List API keys

List all your active API keys.

Authorizations:
api-key-auth
path Parameters
user-id
required
string

Responses

Response samples

Content type
application/json
{
  • "api-keys": [
    ]
}