Bank Accounts

Banking details for invoice payment instructions.

5 endpoints·Scopes: bank_accounts:read, bank_accounts:write
GET/api/bank-accounts#

List bank accounts

scope · bank_accounts:read

Lists bank accounts the caller can see. Results are filtered by the caller's accessible organizations; many routes paginate via page and limit.

Scope: bank_accounts:read
Endpoint: GET /api/bank-accounts

Example request

curl "https://guliel.com/api/bank-accounts?organizationId=value" \
  -H "Authorization: Bearer $GULIEL_API_KEY"

Query parameters

  • organizationIdreq
    string

Response (200/201)

Array of object:
  • idreq
    string
  • organizationIdreq
    string
  • accountNamereq
    string
  • bankNamereq
    string
  • accountNumberreq
    string | null
  • currenciesreq
    array<string>
  • branchCodereq
    string | null
  • localBankCodereq
    string | null
  • swiftCodereq
    string | null
  • ibanreq
    string | null
  • routingNumberreq
    string | null
  • bankAddressreq
    string | null
  • bankCountryreq
    string | null
  • isDefaultreq
    boolean
  • notesreq
    string | null
  • createdAtreq
    string
  • updatedAtreq
    string

Error responses

400Validation
401Unauthenticated
403Forbidden
500Internal
POST/api/bank-accounts#

Create a bank account

scope · bank_accounts:writerole · CONTRIBUTOR+

Creates a new bank account in the target organization. Returns the created record on success.

Scope: bank_accounts:write
Min role: CONTRIBUTOR or higher
Endpoint: POST /api/bank-accounts

Example request

curl -X POST "https://guliel.com/api/bank-accounts" \
  -H "Authorization: Bearer $GULIEL_API_KEY" \
  -H "Content-Type: application/json" \
  --data '{
  "organizationId": "abc123",
  "accountName": "Sample",
  "bankName": "Sample",
  "currencies": [
    "USD"
  ],
  "isDefault": false
}'

Request body

  • organizationIdreq
    string
  • accountNamereq
    string
  • bankNamereq
    string
  • accountNumber
    string | null
  • currenciesreq
    array<string>
  • branchCode
    string | null
  • localBankCode
    string | null
  • swiftCode
    string | null
  • iban
    string | null
  • routingNumber
    string | null
  • bankAddress
    string | null
  • bankCountry
    string | null
  • isDefaultreq
    boolean
  • notes
    string | null

Response (200/201)

  • idreq
    string
  • organizationIdreq
    string
  • accountNamereq
    string
  • bankNamereq
    string
  • accountNumberreq
    string | null
  • currenciesreq
    array<string>
  • branchCodereq
    string | null
  • localBankCodereq
    string | null
  • swiftCodereq
    string | null
  • ibanreq
    string | null
  • routingNumberreq
    string | null
  • bankAddressreq
    string | null
  • bankCountryreq
    string | null
  • isDefaultreq
    boolean
  • notesreq
    string | null
  • createdAtreq
    string
  • updatedAtreq
    string

Error responses

400Validation
401Unauthenticated
403Forbidden
429RateLimit
500Internal
DELETE/api/bank-accounts/{id}#

Delete a bank account

scope · bank_accounts:write

Deletes the bank account. Some endpoints hard-delete the row, others soft-revoke (set revokedAt). Check the response shape.

Scope: bank_accounts:write
Endpoint: DELETE /api/bank-accounts/{id}

Example request

curl -X DELETE "https://guliel.com/api/bank-accounts/abc123?id=value" \
  -H "Authorization: Bearer $GULIEL_API_KEY"

Query parameters

  • idreq
    string

Response (200/201)

  • successreq
    boolean

Error responses

400Validation
401Unauthenticated
403Forbidden
429RateLimit
500Internal
GET/api/bank-accounts/{id}#

Get a bank account

scope · bank_accounts:read

Fetches a single bank account by id. Returns 404 if the bank account isn't in the caller's accessible organizations.

Scope: bank_accounts:read
Endpoint: GET /api/bank-accounts/{id}

Example request

curl "https://guliel.com/api/bank-accounts/abc123?id=value" \
  -H "Authorization: Bearer $GULIEL_API_KEY"

Query parameters

  • idreq
    string

Response (200/201)

  • idreq
    string
  • organizationIdreq
    string
  • accountNamereq
    string
  • bankNamereq
    string
  • accountNumberreq
    string | null
  • currenciesreq
    array<string>
  • branchCodereq
    string | null
  • localBankCodereq
    string | null
  • swiftCodereq
    string | null
  • ibanreq
    string | null
  • routingNumberreq
    string | null
  • bankAddressreq
    string | null
  • bankCountryreq
    string | null
  • isDefaultreq
    boolean
  • notesreq
    string | null
  • createdAtreq
    string
  • updatedAtreq
    string

Error responses

400Validation
401Unauthenticated
403Forbidden
500Internal
PATCH/api/bank-accounts/{id}#

Update a bank account

scope · bank_accounts:write

Updates an existing bank account. Only the fields present in the request body are changed; omitted fields stay as-is.

Scope: bank_accounts:write
Endpoint: PATCH /api/bank-accounts/{id}

Example request

curl -X PATCH "https://guliel.com/api/bank-accounts/abc123" \
  -H "Authorization: Bearer $GULIEL_API_KEY" \
  -H "Content-Type: application/json" \
  --data '{
  "id": "abc123"
}'

Request body

  • idreq
    string
  • accountName
    string
  • bankName
    string
  • accountNumber
    string
  • currencies
    array<string>
  • branchCode
    string | null
  • localBankCode
    string | null
  • swiftCode
    string | null
  • iban
    string | null
  • routingNumber
    string | null
  • bankAddress
    string | null
  • bankCountry
    string | null
  • isDefault
    boolean
  • notes
    string | null

Response (200/201)

  • idreq
    string
  • organizationIdreq
    string
  • accountNamereq
    string
  • bankNamereq
    string
  • accountNumberreq
    string | null
  • currenciesreq
    array<string>
  • branchCodereq
    string | null
  • localBankCodereq
    string | null
  • swiftCodereq
    string | null
  • ibanreq
    string | null
  • routingNumberreq
    string | null
  • bankAddressreq
    string | null
  • bankCountryreq
    string | null
  • isDefaultreq
    boolean
  • notesreq
    string | null
  • createdAtreq
    string
  • updatedAtreq
    string

Error responses

400Validation
401Unauthenticated
403Forbidden
429RateLimit
500Internal