This repository has been archived by the owner on Dec 16, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 6
ShelterTech Data Mapping
awalkowiak edited this page Jul 18, 2019
·
19 revisions
ShelterTech data is provided via an API endpoint. The whole data is fetched using only one request and its result should consist all data gathered by the ShelterTech.
Data can be provided in .json files as well and uploaded using 'Upload data' view.
Provider field | Example value | Mapped to |
---|---|---|
alternate_name | "SHORTNAME" | Organization.alternateName |
certified | true | ignore |
"info@example.com, https://facebook.com/example" | If the string is blank, Organization.email is set to null. If string contains at least one valid e-mail address, it is assigned to Organization.email. Any other address or link are skipped. | |
id | 159 | Organization.externalDbId |
legal_status | "Non-profit" | Organization.legalStatus |
long_description | "Nonprofit organization that promotes solar power for low-income homeowners, communties, and governments, including no-cost solar installations and job training." | Organization.description |
name | "Power Alternatives" | Organization.name |
short_description | "Nonprofit organization that promotes alternatives." | ignore |
status | "approved" | When status is set to "approved" Organization.active is set to true. Otherwise, Organization.active is set to false. |
verified_at | "2018-09-07T02:41:53.743Z" | ignore |
website | "https://companywebsite.org" | Organization.url |
certified_at | "2018-09-07T02:41:53.743Z" | ignore |
services | An array of Service objects. | Organization.services |
schedule | Schedule | ignore |
phones | An array of Phone objects. | Every phone is assigned to the Organization |
address | Address | Organization.location |
notes | An array of Note objects. | ignore |
categories | An array of Category objects. | ignore |
ratings | An empty array. | ignore |
ST_Organization.Address = SN_Organization.Location
Provider field | Example value | Mapped to |
---|---|---|
alternate_name | "PAPHI" | Service.alternateName |
application_process | "To make an appointment in San Francisco, call […]" | Service.applicationProcess |
certified | false | If certified then Service.status is set to "Certified". Otherwise, Service.status is set to "Non-certified". |
eligibility | "randomName, randomName2. If you don’t have insurance, they will try to help you get it. English & Spanish." | Service.eligibility |
"info@example.com, https://facebook.com/example" | Service.email | |
fee | "Insurance or sliding scale" | Service.fees |
id | 22 | Service.externalDbId |
interpretation_services | "Spanish" | ignore |
long_description | "Office Hours:\nMonday through Friday from 6:30am-1:00pm\nSaturday from 6:30am-12:00pm\nOffice closed first and third Monday of the month." | Service.description |
name | "Job Placement" | Service.name |
required_documents | "No documentation required" | mapped to RequiredDocument.document, as an only element of Service.docs |
url | "http://www.companywebsite.org/locationsStockton.html" | Service.url |
verified_at | "2018-01-03T21:39:14.414Z" | ignore |
wait_time | "Numbers at 8:30, Food at 10:30", "Priority is given to disabled, seniors, families" | Service.waitTime |
certified_at | "2018-01-03T21:39:14.414Z" | ignore |
schedule | Schedule | Service.regularSchedule |
notes | An array of Note objects. | ignore |
categories | An array of Category objects. | ignore |
eligibilities | An array of Eligibility objects. | ignore |
Provider field | Example value | Mapped to |
---|---|---|
id | 626 | Location.externalDbId |
attention | null | PhysicalAddress.attention, PostalAddress.attention |
address_1 | "1234 Ocean Avenue" | used to generate Location.name (address_1 + " - " + city + " (" + state + ")"), PhysicalAddress.address1, PostalAddress.address1 |
address_2 | "City Name" | ignore |
address_3 | "CA" | ignore |
address_4 | "12345" | ignore |
city | "City Name" | used to generate Location.name (address_1 + " - " + city + " (" + state + ")"), PhysicalAddress.city, PostalAddress.city |
state_province | "CA" | used to generate Location.name (address_1 + " - " + city + " (" + state + ")"), PhysicalAddress.stateProvince, PostalAddress.stateProvince |
postal_code | "12345" | PhysicalAddress.postalCode, PostalAddress.postalCode |
country | "USA" | PhysicalAddress.country, PostalAddress.country |
latitude | "38.123456" | Location.latitude |
longitude | "-120.123456" | Location.longitude |
Note! ST_Address = SN_Location = SN_Location.PhysicalAddress + SN_Location.PostalAddress ()
Provider field | Example value | Mapped to |
---|---|---|
id | 626 | ignore |
schedule_days | An array of ScheduleDays objects. | RegularSchedule.openingHours |
Provider field | Example value | Mapped to |
---|---|---|
id | 626 | ignore |
day | "Wednesday" etc. | Mapped to proper number of OpeningHours.weekday (assuming that possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday) |
opens_at | 900 | Formatted to "hh:mm" and set to OpeningHours.opensAt |
closes_at | 1300 | Formatted to "hh:mm" and set to OpeningHours.closesAt |
open_time | 900 | Formatted to "hh:mm" and set to OpeningHours.opensAt (if opens_at is empty) |
close_time | 1300 | Formatted to "hh:mm" and set to OpeningHours.closesAt (if closes_at is empty) |
open_day | "Wednesday" etc. | ignore |
close_day | "Wednesday" etc. | ignore |
Provider field | Example value | Mapped to |
---|---|---|
id | 1780 | ignore |
number | "(123) 123-1234" | Phone.number |
extension | "11" | Phone.extension |
service_type | "Ext 501" | Phone.type |
country_code | "US" | If country_code is set to "US" Phone.language is set to "en". Otherwise, language is null. |
Provider field | Example value | Mapped to |
---|---|---|
id | 123 | ignore |
note | "Apply in person Wed 4-6:45pm. If accepted, you will be mailed card which you must bring with you to pick up food every Wed. You must live in zip code 12345, 12345, 12345, or 12345. Must bring ID." | ignore |
Provider field | Example value | Mapped to |
---|---|---|
name | "Mental Illness", "Different Illness" | ignore |
id | 123 | ignore |
Provider field | Example value | Mapped to |
---|---|---|
name | "Technology" | ignore |
id | 123 | ignore |
top_level | false | ignore |
featured | false | ignore |
ST - ShelterTech, SN - ServiceNet
- ST_Organization.Address is saved as SN_Organization.location, SN_Organization.location.physicalAddress and SN_Organization.location.postalAddress,
- ST does not describe languages explicitly. They are hidden in notes or in descriptions. At this point we SN ignores them.
- ST_Service.eligibility is a string mapped to SN_Eligibility,
- ST_Service.eligibilities is a list of ST_Eligibilities and it isn't mapped to SN_Eligibility, because it is always set to null and conflicts with ST_Service.eligibility