Contact Info
Consumer API
>
API Reference
>
v0
>
User
>
Contact Info
openapi: 3.0.0
info:
version: "1.0.0"
title: Contact Info
servers:
- url: "https://{API_ENVIRONMENT}/a/consumer/api/v0"
variables:
API_ENVIRONMENT:
default: digital.garden-fi.com
description: FI specific hostname
tags:
- name: Contact Info
paths:
"/users/{userId}/address":
put:
tags:
- Contact Info
description: |
This endpoint does not support being used with an Access Token from the Admin API.
Update a user's address.
security:
- OpenID_Connect:
- "https://api.banno.com/consumer/auth/user.address.readwrite"
parameters:
- in: path
name: userId
description: User's ID
required: true
schema:
type: string
format: uuid
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/addressUpdate"
description: new address
required: true
responses:
"202":
description:
Accepted the update to the user's address, but the change will not
be processed until later. This is used for such things as CU memo
mode.
"204":
description: Success. Updated the user's address to the one supplied.
"400":
description:
Supplied address violates standard address formatting or HTTP
Request's body does not adhere to contract, i.e. not expected JSON
content:
application/json:
schema:
$ref: "#/components/schemas/invalidAddressUpdate"
"401":
description:
Failed to provide a valid Fully Auth'd JWT or path's userId does not
match JWT-extracted userId.
content:
application/json:
schema:
$ref: "#/components/schemas/webErrorStandard"
"403":
description: See error code description.
content:
application/json:
schema:
$ref: "#/components/schemas/forbiddenHighRisk"
"404":
description: User not found.
content:
application/json:
schema:
$ref: "#/components/schemas/webErrorStandard"
"500":
description: Server error
content:
application/json:
schema:
$ref: "#/components/schemas/webErrorStandard"
"/users/{userId}/email":
put:
tags:
- Contact Info
description: |
This endpoint does not support being used with an Access Token from the Admin API.
Update a user's email.
security:
- OpenID_Connect:
- "https://api.banno.com/consumer/auth/user.email.readwrite"
parameters:
- in: path
name: userId
description: User's ID
required: true
schema:
type: string
format: uuid
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/email"
description: new email
required: true
responses:
"202":
description:
Accepted the update to the user's email, but the change will not be
processed until later. This is used for such things as CU memo mode.
"204":
description: Success. Updated the user's email to the supplied value.
"400":
description:
Supplied email violates standard email formatting or HTTP Request's
body does not adhere to contract, i.e. not expected JSON
content:
application/json:
schema:
$ref: "#/components/schemas/invalidEmailUpdate"
"401":
description:
Failed to provide a valid Fully Auth'd JWT or path's userId does not
match JWT-extracted userId.
content:
application/json:
schema:
$ref: "#/components/schemas/webErrorStandard"
"403":
description: See error code description.
content:
application/json:
schema:
$ref: "#/components/schemas/forbiddenHighRisk"
"404":
description: User not found.
"409":
description:
User is requesting to change contact info when institution has
missing/invalid configuration or setting for CustMod operations
(requires a jSource case)
content:
application/json:
schema:
$ref: "#/components/schemas/webErrorStandard"
"500":
description: Server error
content:
application/json:
schema:
$ref: "#/components/schemas/webErrorStandard"
"503":
description:
Service is not available, e.g. because of nightly processing for
banks, and does not support changing user info at this time. Please
try again later.
content:
application/json:
schema:
$ref: "#/components/schemas/webErrorStandard"
"/users/{userId}/phones":
get:
tags:
- Contact Info
description: |
This endpoint supports being used with an Access Token from the Admin API with "View everything – users, messages, settings, and organizations and organization members" permission for Associated User.
Get a user's phone record.
security:
- OpenID_Connect:
- "https://api.banno.com/consumer/auth/user.profile.readonly"
- "https://api.banno.com/consumer/auth/user.phone.readwrite"
parameters:
- in: path
name: userId
description: User's ID
required: true
schema:
type: string
format: uuid
responses:
"200":
description: The user's phone numbers
content:
application/json:
schema:
$ref: "#/components/schemas/phoneNumbers"
"401":
description:
Failed to provide a valid Fully Auth'd JWT or path's userId does not
match JWT-extracted userId.
content:
application/json:
schema:
$ref: "#/components/schemas/webErrorStandard"
"403":
description: See error code description.
content:
application/json:
schema:
$ref: "#/components/schemas/forbidden"
"404":
description: User not found.
content:
application/json:
schema:
$ref: "#/components/schemas/webErrorStandard"
"500":
description: Server error
content:
application/json:
schema:
$ref: "#/components/schemas/webErrorStandard"
put:
tags:
- Contact Info
description: |
This endpoint does not support being used with an Access Token from the Admin API.
Update a user's phone record to the given values for each type.
security:
- OpenID_Connect:
- "https://api.banno.com/consumer/auth/user.phone.readwrite"
parameters:
- in: path
name: userId
description: User's ID
required: true
schema:
type: string
format: uuid
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/phoneNumbersToUpdate"
description: The user's phone numbers, with any updates made
required: true
responses:
"202":
description:
Accepted the update to the user's phone numbers, but the change will
not be processed until later. This is used for such things as CU
memo mode.
"204":
description:
Success. The record of phone numbers for that user has been updated,
in full, to the supplied record.
"400":
description:
One or more phone numbers do not match pattern or HTTP Request's
body does not adhere to contract, i.e. not expected JSON.
content:
application/json:
schema:
$ref: "#/components/schemas/invalidPhoneUpdate"
"401":
description:
Failed to provide a valid Fully Auth'd JWT or path's userId does not
match JWT-extracted userId.
content:
application/json:
schema:
$ref: "#/components/schemas/webErrorStandard"
"403":
description: See error code description.
content:
application/json:
schema:
$ref: "#/components/schemas/forbiddenHighRisk"
"404":
description: User not found.
content:
application/json:
schema:
$ref: "#/components/schemas/webErrorStandard"
"409":
description:
User is requesting to change contact info when institution has
missing/invalid configuration or setting for CustMod operations
(requires a jSource case)
content:
application/json:
schema:
$ref: "#/components/schemas/webErrorStandard"
"500":
description: Server error
content:
application/json:
schema:
$ref: "#/components/schemas/webErrorStandard"
"503":
description:
Service is not available, e.g. because of nightly processing for
banks, and does not support changing user info at this time. Please
try again later.
content:
application/json:
schema:
$ref: "#/components/schemas/webErrorStandard"
components:
securitySchemes:
OpenID_Connect:
type: openIdConnect
description: OpenID Connect - Discovery endpoint will be institution specific
openIdConnectUrl: >-
https://digital.garden-fi.com/a/consumer/api/v0/oidc/.well-known/openid-configuration
schemas:
addressUpdate:
type: object
required:
- address
properties:
address:
$ref: "#/components/schemas/address"
note:
type: string
description: Optional note user can include regarding this new address
example: This is only my winter address
address:
type: object
required:
- streetAddress1
- city
- state
- zip
properties:
streetAddress1:
type: string
description: First line of user's street address
example: 1001 First Ave
streetAddress2:
type: string
description: Second line of user's street address
example: Apt 2
streetAddress3:
type: string
description: Third line of user's street address
streetAddress4:
type: string
description: Fourth line of user's street address
city:
type: string
description: User's city
example: Cedar Falls
state:
type: string
description: User's state
format: "[A-Z]{2}"
example: IA
zip:
type: string
description: User's zip code
format: "[0-9]{5}([ -]?[0-9]{4})?"
example: "50613"
email:
type: object
required:
- email
properties:
email:
type: string
format: email
phoneNumbers:
type: array
description: All of the user's editable phone numbers in order of priority.
items:
type: object
description: The phone number associated with a phone type label.
required:
- label
- phoneNumber
properties:
label:
type: string
description:
The human-readable name for the phone type to be displayed to the
user.
example: Home cell
phoneNumber:
type: string
description: Exactly 10 digits or empty string.
pattern: ^[0-9]{10}$|^$
example: "5555555555"
phoneNumbersToUpdate:
type: array
description: All of the user's editable phone numbers.
items:
type: object
description:
"The phone number associated with a phone type label. Note: a
phoneNumber can be an empty string, but at least one phoneNumber must
be populated with 10 digits. Changing a phoneNumber to empty string
will be reflected on the core."
required:
- label
- phoneNumber
properties:
label:
type: string
description:
The same human-readable name for the phone type as returned in
`GET /users/userId/phones`.
example: Home cell
phoneNumber:
type: string
description: Exactly 10 digits or empty string.
pattern: ^[0-9]{10}$|^$
example: "5555555555"
webErrorStandard:
type: object
required:
- type
- message
- status
properties:
type:
type: string
description: web standard error
message:
type: string
description: description of error
status:
type: string
description: error status
invalidAddressUpdate:
type: object
required:
- type
- message
- status
properties:
type:
type: string
enum:
- InvalidAddressFormat
- InvalidJSON
- FailedToUpdate
description: |
* InvalidAddressFormat - one or more fields do not match expected pattern
* InvalidJSON - unexpected or unparseable json
* FailedToUpdate - unable to update address (if institution has conversations ability, a conversation may be started as a backup)
message:
type: string
description: description of error
status:
type: string
description: error status
invalidEmailUpdate:
type: object
required:
- type
- message
- status
properties:
type:
type: string
enum:
- InvalidEmailFormat
- InvalidJSON
message:
type: string
description: description of error
status:
type: string
description: error status
invalidPhoneUpdate:
type: object
required:
- type
- message
- status
properties:
type:
type: string
enum:
- InvalidPhoneNumber
- InvalidPhoneTypes
- InvalidJSON
description: |
* InvalidPhoneNumber - one or more phone numbers do not match pattern
* InvalidPhoneTypes - phone type labels were wrong or missing
* InvalidJSON - unexpected or unparseable json or all phone numbers were null
message:
type: string
description: description of error
status:
type: string
description: error status
forbiddenHighRisk:
type: object
required:
- errorCode
- type
- message
- status
properties:
errorCode:
type: number
enum:
- 33
- 40
- 42
description: |
* 33 - Did not supply a High Risk-permitted JWT
* 40 - User is not permitted to use this feature due to User or FI Ability
* 42 - SymX user failed username/password check (creds out of sync)
type:
type: string
enum:
- InvalidAddressFormat
- InvalidJSON
- FailedToUpdate
description: |
* InvalidAddressFormat - one or more fields do not match expected pattern
* InvalidJSON - unexpected or unparseable json
* FailedToUpdate - unable to update address (if institution has conversations ability, a conversation may be started as a backup)
message:
type: string
description: description of error
status:
type: string
description: error status
forbidden:
type: object
required:
- errorCode
- type
- message
- status
properties:
errorCode:
type: number
enum:
- 40
- 42
description: |
* 40 - User is not permitted to use this feature due to User or FI Ability
* 42 - SymX user failed username/password check (creds out of sync)
type:
type: string
enum:
- InvalidAddressFormat
- InvalidJSON
- FailedToUpdate
description: |
* InvalidAddressFormat - one or more fields do not match expected pattern
* InvalidJSON - unexpected or unparseable json
* FailedToUpdate - unable to update address (if institution has conversations ability, a conversation may be started as a backup)
message:
type: string
description: description of error
status:
type: string
description: error status
Have a Question?
Have a how-to question? Seeing a weird error? Get help on
StackOverflow.
Register for the Digital Toolkit Meetup
where we answer technical Q&A from the audience.
Last updated Thu May 27 2021