bcgov / entity

ServiceBC Registry Team working on Legal Entities
Apache License 2.0
23 stars 59 forks source link

Platform API Validation - Bulk #23671

Open fionazhou-jsb opened 1 month ago

fionazhou-jsb commented 1 month ago

As a STR Platform I want to pass host registration details (registration number, unit number if applicable, street number, postal code and primary listing ID) in bulk via API to the STR registry on a daily basis, So that I can confirm the validity of the registration and ensure compliance with regulations on a daily basis.

Context / Background

Platform must validate their registration details against the Short Term Rental registry. The validation includes checking the registration status and confirming that the address information (unit number, street number, and postal code) entered by the host on the platform site matches what is on file with the registry. Platform needs to do real time validation as well as daily bulk validation.

We need to return a message that indicate whether the validation passes or fails.

It is not clear yet what time platform needs to send the listings in bulk to the registry for daily validation, 11:50pm PST for all platforms or staggered, or as long as every 24 hours window is met.

Presentation

Teams Channel

Document given to Housing regarding API

Business Rules

Bulk Daily API verification 

Platform will request validation for multiple listings.

For Valid Registration

- registration: abcd123, code: 404,  status: ACTIVE (suspended, cancelled, expired)  

 - code: 404 means there is an error 

Address mismatch

Story Scenarios

Scenario 1: Platform sends listing information required in bulk

Scenario 2: Response is ready

Scenario 3: API call fails or external registry is unavailable

Scenario 4: Platform missed the deadline to provide the file

fionazhou-jsb commented 1 month ago

@stcepeda for you to review

stcepeda commented 1 month ago

@fionazhou-jsb This looks good. Only comment - I think different error codes are required for the status of the registration. Ie. a different code for active, cancelled, and suspended. Because the platform is required to take different actions for different statuses so it seems like they should all have a unique code?