AmericaSCORESBayArea / AmericaSCORESBayArea/salesforce-data-api
Contact endpoints can return mapped values for demographic fields based on an external system argument in the request
- Lenguaje dominante
- DataWeave
- Estrellas
- 2
- Forks
- 1
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
*Problem:*
Different external systems supported by the Sync Robot accept different values for ethnicity, gender etc. Registration forms and other related inputs must depend on simplified option lists.
The Robot needs to transmit the values for fields that can be accepted by those systems.
*Solution*
API based rules provide mappings based on an option value in the request:External_System (String)
Maintaining the mappings in a single place where it is appropriate and can be managed through a prop file or equivalent, under version control.
*Example*
1. A parent of a new Scores Student is required to select an ethnicity to register. (required by that same school district).
2. They select "Hispanic/Latinx" from the form provided by Scores
3. Publishing this record to that student's home schools district, the system accepts only the following: "Latino/Latina", "Hispanic of European Descent", "Central or South American"
4. The sync robot sends a request for the contact record using the contact ID and an argument string identifying the destination mapping "DCYF" (example)
5. The API retrieves the record, as stored, and based on the correct mapping rule for that field, returns, "Latino/Latina" which is acceptable to that system and agreed by system stakeholders (Program and District officials)
6. When the record is updated/PATCH, the system has a reverse mapping rule that stores the value "Hispanic/Latinx" based on the source system argument and value sent "Latino/Latina"
7. A log event reports the mapping took place including original and mapped values.
*Dependencies*
https://github.com/AmericaSCORESBayArea/student-registration/issues/197
https://github.com/AmericaSCORESBayArea/External-Sync-Robot/issues/166
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Evaluación
Este issue todavía no se ha evaluado.