Weavr Passwords API
The Passwords API from Weavr — 5 operation(s) for passwords.
The Passwords API from Weavr — 5 operation(s) for passwords.
openapi: 3.1.0
info:
version: v3
title: Weavr Multi Product BackOffice Access Token Passwords API
x-logo:
url: https://storage.googleapis.com/weavr-cdn/weavr_logo-new.png
backgroundColor: '#FFFFFF'
altText: Weavr
description: 'Weavr Multi Back Office API allows you, as an innovator, to perform various back office operations concerning
identities and their instruments, without requiring the users to be logged in.
A token is to be obtained through the `access_token` method, and this will allow relevant operations
to be performed on behalf of this same identity.
'
contact:
name: Weavr
url: https://weavr.io
servers:
- description: Weavr Sandbox Environment
url: https://sandbox.weavr.io/multi/backoffice
tags:
- name: Passwords
paths:
/v1/password/{user_id}:
post:
operationId: passwordCreate
description: Create a new password for the user identified by the `user_id` path parameter.
summary: Create a password
tags:
- Passwords
security:
- apiKey: []
parameters:
- name: user_id
in: path
required: true
description: The unique identifier for the user.
schema:
type: string
pattern: ^[0-9]+$
example: '110747174434373672'
requestBody:
required: true
content:
application/json:
schema:
required:
- password
type: object
properties:
password:
type: object
description: "The user's password or passcode used to log in a user.\nPasswords must be:\n - between 8 and 30 characters\n - include a lowercase character\n - include an uppercase character\n - include a digit and a special character\n - different from any of the 5 last such passwords used.\n\nFor non-PCI compliant integrations, the password submitted must be **tokenised**.\n"
required:
- value
properties:
value:
minLength: 1
maxLength: 100
type: string
format: password
responses:
'200':
description: OK
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
content:
application/json:
schema:
type: object
properties:
passwordInfo:
type: object
required:
- buyerId
description: Additional information related to the user's password.
properties:
buyerId:
type: string
pattern: ^[0-9]+$
description: The buyer to which the user's password information belongs to.
expiryDate:
minimum: 0
type: integer
format: int64
description: The millisecond timestamp indicating when the password will expire. If 0, then this password will not expire.
token:
type: string
description: The authorisation token to be used in the Authorization header for secured operations.
'400':
description: Bad Request Error - Your request is invalid.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
content:
application/json:
schema:
type: object
properties:
message:
maxLength: 255
type: string
description: When present helps to identify and fix the problem.
syntaxErrors:
type: object
description: Is returned as part of an HTTP error response whenever a syntax error is detected. A list of the fields together with their syntax error will be provided.
properties:
invalidFields:
type: array
items:
type: object
properties:
params:
type: array
items:
type: string
fieldName:
type: string
error:
type: string
enum:
- REQUIRED
- HAS_TEXT
- REQUIRES
- SIZE
- RANGE
- IN
- NOT_IN
- REGEX
- EXACTLY
- AT_LEAST
- AT_MOST
- ALL_OR_NONE
'401':
description: Unauthorized - Your credentials or access token are invalid.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
'403':
description: Forbidden - Access to the requested resource or action is forbidden.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
content:
application/json:
schema:
type: object
properties:
errorCode:
type: string
enum:
- INSUFFICIENT_PERMISSIONS
'404':
description: Not found - The requested resource couldn't be found.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
content:
application/json:
schema:
type: object
properties:
code:
type: string
message:
type: string
'409':
description: Conflict
content:
application/json:
schema:
type: object
properties:
errorCode:
type: string
enum:
- UNRESOLVED_IDENTITY
- PASSWORD_PROFILE_NOT_CONFIGURED_FOR_CREDENTIAL_TYPE
- PASSWORD_TOO_SHORT
- PASSWORD_TOO_LONG
- PASSWORD_TOO_SIMPLE
- PASSWORD_KEY_ALREADY_IN_USE
- PASSWORD_ALREADY_CREATED
'429':
description: Too many requests.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
x-ratelimit-limit:
description: 'Example: `20, 10;w=60, 20;w=3600, 200;w=86400`
The first number (20) is the limit that has been exceeded.
The remaining numbers are the limits that are in force, with ''w'' meaning ''window in seconds''. In this example `20;w=3600` was exceeded. 20 calls in 3600secs (1hr)
'
required: true
schema:
type: string
x-ratelimit-reset:
description: The number of seconds until the window is reset.
required: true
schema:
minimum: 0
type: integer
format: int32
'500':
description: Internal Server Error - There is a problem with the server. Please try again later.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
'503':
description: Service Unavailable - We're temporarily offline for maintenance. Please try again later.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
default:
description: Error
content:
application/json:
schema:
type: object
properties:
code:
type: string
message:
type: string
/v1/passwords/update:
post:
description: Update the password for the logged-in user.
summary: Update a password
operationId: passwordUpdate
tags:
- Passwords
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- oldPassword
- newPassword
properties:
oldPassword:
type: object
description: "The user's password or passcode used to log in a user.\nPasswords must be:\n - between 8 and 30 characters\n - include a lowercase character\n - include an uppercase character\n - include a digit and a special character\n - different from any of the 5 last such passwords used.\n\nFor non-PCI compliant integrations, the password submitted must be **tokenised**.\n"
required:
- value
properties:
value:
minLength: 1
maxLength: 100
type: string
format: password
newPassword:
type: object
description: "The user's password or passcode used to log in a user.\nPasswords must be:\n - between 8 and 30 characters\n - include a lowercase character\n - include an uppercase character\n - include a digit and a special character\n - different from any of the 5 last such passwords used.\n\nFor non-PCI compliant integrations, the password submitted must be **tokenised**.\n"
required:
- value
properties:
value:
minLength: 1
maxLength: 100
type: string
format: password
responses:
'200':
description: OK
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
content:
application/json:
schema:
type: object
properties:
passwordInfo:
type: object
required:
- buyerId
description: Additional information related to the user's password.
properties:
buyerId:
type: string
pattern: ^[0-9]+$
description: The buyer to which the user's password information belongs to.
expiryDate:
minimum: 0
type: integer
format: int64
description: The millisecond timestamp indicating when the password will expire. If 0, then this password will not expire.
token:
type: string
description: The authorisation token to be used in the Authorization header for secured operations.
'400':
description: Bad Request Error - Your request is invalid.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
content:
application/json:
schema:
type: object
properties:
message:
maxLength: 255
type: string
description: When present helps to identify and fix the problem.
syntaxErrors:
type: object
description: Is returned as part of an HTTP error response whenever a syntax error is detected. A list of the fields together with their syntax error will be provided.
properties:
invalidFields:
type: array
items:
type: object
properties:
params:
type: array
items:
type: string
fieldName:
type: string
error:
type: string
enum:
- REQUIRED
- HAS_TEXT
- REQUIRES
- SIZE
- RANGE
- IN
- NOT_IN
- REGEX
- EXACTLY
- AT_LEAST
- AT_MOST
- ALL_OR_NONE
'401':
description: Unauthorized - Your credentials or access token are invalid.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
'403':
description: Forbidden - Access to the requested resource or action is forbidden.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
content:
application/json:
schema:
type: object
properties:
errorCode:
type: string
enum:
- INSUFFICIENT_PERMISSIONS
'409':
description: Conflict
content:
application/json:
schema:
type: object
properties:
errorCode:
type: string
enum:
- PASSWORD_ALREADY_USED
- PASSWORD_TOO_SHORT
- PASSWORD_TOO_LONG
- PASSWORD_TOO_SIMPLE
- PASSWORD_INCORRECT
'429':
description: Too many requests.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
x-ratelimit-limit:
description: 'Example: `20, 10;w=60, 20;w=3600, 200;w=86400`
The first number (20) is the limit that has been exceeded.
The remaining numbers are the limits that are in force, with ''w'' meaning ''window in seconds''. In this example `20;w=3600` was exceeded. 20 calls in 3600secs (1hr)
'
required: true
schema:
type: string
x-ratelimit-reset:
description: The number of seconds until the window is reset.
required: true
schema:
minimum: 0
type: integer
format: int32
'500':
description: Internal Server Error - There is a problem with the server. Please try again later.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
'503':
description: Service Unavailable - We're temporarily offline for maintenance. Please try again later.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
default:
description: Error
content:
application/json:
schema:
type: object
properties:
code:
type: string
message:
type: string
/v1/passwords/validate:
post:
description: Check that a password adheres to all complexity checks.
summary: Validate a password
operationId: passwordValidate
security:
- apiKey: []
tags:
- Passwords
requestBody:
required: true
content:
application/json:
schema:
required:
- password
type: object
properties:
password:
type: object
description: "The user's password or passcode used to log in a user.\nPasswords must be:\n - between 8 and 30 characters\n - include a lowercase character\n - include an uppercase character\n - include a digit and a special character\n - different from any of the 5 last such passwords used.\n\nFor non-PCI compliant integrations, the password submitted must be **tokenised**.\n"
required:
- value
properties:
value:
minLength: 1
maxLength: 100
type: string
format: password
responses:
'204':
description: Success - No Content.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
'400':
description: Bad Request Error - Your request is invalid.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
content:
application/json:
schema:
type: object
properties:
message:
maxLength: 255
type: string
description: When present helps to identify and fix the problem.
syntaxErrors:
type: object
description: Is returned as part of an HTTP error response whenever a syntax error is detected. A list of the fields together with their syntax error will be provided.
properties:
invalidFields:
type: array
items:
type: object
properties:
params:
type: array
items:
type: string
fieldName:
type: string
error:
type: string
enum:
- REQUIRED
- HAS_TEXT
- REQUIRES
- SIZE
- RANGE
- IN
- NOT_IN
- REGEX
- EXACTLY
- AT_LEAST
- AT_MOST
- ALL_OR_NONE
'401':
description: Unauthorized - Your credentials or access token are invalid.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
'403':
description: Forbidden - Access to the requested resource or action is forbidden.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
content:
application/json:
schema:
type: object
properties:
errorCode:
type: string
enum:
- INSUFFICIENT_PERMISSIONS
'409':
description: Conflict
content:
application/json:
schema:
type: object
properties:
errorCode:
type: string
enum:
- PASSWORD_ALREADY_USED
- PASSWORD_TOO_SHORT
- PASSWORD_TOO_LONG
- PASSWORD_TOO_SIMPLE
- PASSWORD_INCORRECT
'429':
description: Too many requests.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
x-ratelimit-limit:
description: 'Example: `20, 10;w=60, 20;w=3600, 200;w=86400`
The first number (20) is the limit that has been exceeded.
The remaining numbers are the limits that are in force, with ''w'' meaning ''window in seconds''. In this example `20;w=3600` was exceeded. 20 calls in 3600secs (1hr)
'
required: true
schema:
type: string
x-ratelimit-reset:
description: The number of seconds until the window is reset.
required: true
schema:
minimum: 0
type: integer
format: int32
'500':
description: Internal Server Error - There is a problem with the server. Please try again later.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
'503':
description: Service Unavailable - We're temporarily offline for maintenance. Please try again later.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
default:
description: Error
content:
application/json:
schema:
type: object
properties:
code:
type: string
message:
type: string
/v1/passwords/lost_password/start:
post:
description: 'Initiate the lost password process.
If the email address provided is associated with an active user, an email will be sent, containing a URL that redirects the user to change their password.
The URL contains request parameters for all of the parameters required to change the password for the user via the `/passwords/lost_password/resume` POST endpoint.
'
summary: Initiate lost password process
operationId: lostPasswordInitiate
security:
- apiKey: []
tags:
- Passwords
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- email
properties:
email:
type: string
description: E-mail Address of the user
format: email
responses:
'204':
description: Success - No Content.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
'400':
description: Bad Request Error - Your request is invalid.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
content:
application/json:
schema:
type: object
properties:
message:
maxLength: 255
type: string
description: When present helps to identify and fix the problem.
syntaxErrors:
type: object
description: Is returned as part of an HTTP error response whenever a syntax error is detected. A list of the fields together with their syntax error will be provided.
properties:
invalidFields:
type: array
items:
type: object
properties:
params:
type: array
items:
type: string
fieldName:
type: string
error:
type: string
enum:
- REQUIRED
- HAS_TEXT
- REQUIRES
- SIZE
- RANGE
- IN
- NOT_IN
- REGEX
- EXACTLY
- AT_LEAST
- AT_MOST
- ALL_OR_NONE
'401':
description: Unauthorized - Your credentials or access token are invalid.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
'403':
description: Forbidden - Access to the requested resource or action is forbidden.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
content:
application/json:
schema:
type: object
properties:
errorCode:
type: string
enum:
- INSUFFICIENT_PERMISSIONS
'409':
description: Conflict
content:
application/json:
schema:
type: object
properties:
errorCode:
type: string
enum:
- MULTIPLE_ACCOUNTS_FOUND
- ACCOUNT_NOT_FOUND
'429':
description: Too many requests.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
x-ratelimit-limit:
description: 'Example: `20, 10;w=60, 20;w=3600, 200;w=86400`
The first number (20) is the limit that has been exceeded.
The remaining numbers are the limits that are in force, with ''w'' meaning ''window in seconds''. In this example `20;w=3600` was exceeded. 20 calls in 3600secs (1hr)
'
required: true
schema:
type: string
x-ratelimit-reset:
description: The number of seconds until the window is reset.
required: true
schema:
minimum: 0
type: integer
format: int32
'500':
description: Internal Server Error - There is a problem with the server. Please try again later.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
'503':
description: Service Unavailable - We're temporarily offline for maintenance. Please try again later.
headers:
request-ref:
description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
required: true
schema:
type: string
default:
description: Error
content:
application/json:
schema:
type: object
properties:
code:
type: string
message:
type: string
/v1/passwords/lost_password/resume:
post:
description: 'This is the second and final step in updating the password of a user who forgot their password.
'
summary: Resume lost password process
operationId: lostPasswordResume
security:
- apiKey: []
tags:
# --- truncated at 32 KB (40 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/weavr/refs/heads/main/openapi/weavr-passwords-api-openapi.yml