Primero is an open source software platform that helps social services, humanitarian and development workers manage protection-related data.
Primero data is primarily stored in cases, services and referrals.
- Cases - used to track data on people
- Referrals - Referring a record is a way of giving a user limited access to a record without transferring it completely
- Services - Cases are referred for specific services such as
Learn more about Primero records using the user guides at the Primero documentation site: https://support.primero.org/documentation
See Primero admin guide for guidance on unique identifiers.
Integration Use Cases
- As a UNICEF caseworker, I would like to electronically send a referral for a case to UNHCR. I would also like to receive an update on the referral decision.
- As a UNICEF caseworker, I would like to use a third-party dashboard to visualize integrated child protection-related indicators.
Data integration via the Primero web API:
Sample HTTP requests
(This authentication step is handled in the OpenFn Primero adaptor.)
Show a paginated list of all cases that are accessible to this user:
List all referrals that took place for a record:
See the examples section more sample Primero jobs.
- Data forwarding can be enabled in Primero. There is a webhook that can forward
case information to a designated URL endpoint (e.g., OpenFn Inbox). This data
forwarding can happen automatically on insert of a new case, as well as
on-demand when a user clicks the
Syncbutton (which may be added to the page layout if this feature is in use).
- Each Primero
case_idwhich can be used as an external identifier in the destination system.
- Each Primero case also has a
record_idwhich is the id in the URL for each case
- It is helpful to set up a job that only fetches a case from Primero like the one here. This job can come in handy when it's time to test and troubleshoot your solution and validate any test data that was setup in Primero.
Invalid Record JSON: This error message means that the request is either
missing fields or sending fields differently from how Primero expects them.
Revisit your mapping specifications document to ensure all fields are being sent
500 Server errors: This message signals that the server failed to fulfill your
request. Contact the system administrator for assistance.
OpenFn implementations can leverage both the
Primero adaptors to connect with
the Primero API.
NOTE: That the Primero Adaptor has versions to support both Primero API V2 and Primero API V1 (to be deprecated).
- Cambodia: MoSVY Primero < > OSCaR NGOs: https://github.com/OpenFn/unicef-cambodia
- Cambodia: UNICEF Primero < > ONA Dashboard sync: https://github.com/OpenFn/primero-ona-dashboard/
- Gambella: UNICEF Primero < > UNHCR Progres: https://github.com/OpenFn/primero-progres
- Thailand: UNICEF Primero < > MoPH HIS: https://github.com/OpenFn/primero-thailand