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)

  • bankAccountsreq
    array<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