Εύρεση ατόμου
Χρησιμοποιήστε το GET /users. Απαντά σε κάθε αναζήτηση, με σελιδοποίηση και σύνολο.
# με το δικό σας αναγνωριστικό
curl "https://api-eu1.joryio.com/api/users?externalId=user_123" \
-H "Authorization: Bearer jry_live_your_api_key"
# με email
-H "Authorization: Bearer jry_live_your_api_key"
# μερική - οτιδήποτε ξεκινά με "jane", συν αντιστοίχιση τηλεφώνου και id
curl "https://api-eu1.joryio.com/api/users?q=jane" \
-H "Authorization: Bearer jry_live_your_api_key"
Ποια παράμετρος
| Τι έχετε | Χρησιμοποιήστε | Αντιστοίχιση |
|---|---|---|
| Το δικό σας id | ?externalId= | ακριβής |
| Μια διεύθυνση email | ?email= | ακριβής, χωρίς διάκριση πεζών/κεφαλαίων |
| Το 24-ψήφιο id του Joryio | ?userId= | ακριβής |
| Μέρος από κάτι - ένα όνομα, την αρχή ενός email, ένα τηλέφωνο | ?q= | πρόθεμα σε email, externalId, όνομα και επώνυμο· ψηφία οπουδήποτε μέσα στο τηλέφωνο· πλήρης τιμή για 24-ψήφιο id ή anonymousId σε μορφή UUID |
Οι ακριβείς παράμετροι συνδυάζονται (?email=…&externalId=… απαιτεί και τα δύο). Το q αγνοείται όταν υπάρχει ακριβής παράμετρος - το "email ισούται με X" και το "κάποιο πεδίο ξεκινά με Y" δεν μπορούν να περιορίσουν μαζί το ίδιο αίτημα, και ο σιωπηλός συνδυασμός τους θα απαντούσε σε ερώτημα που δεν θέσατε.
Όταν δεν βρεθεί τίποτα
Κενή σελίδα, όχι 404:
{ "data": [], "pagination": { "total": 0, "limit": 50, "offset": 0, "hasMore": false } }
Ταξινόμηση ολόκληρης της λίστας: sortBy (createdAt, updatedAt, email ή name· προεπιλογή updatedAt) και sortOrder (asc ή desc· προεπιλογή desc). Η σειρά είναι σταθερή μεταξύ σελίδων - καμία γραμμή δεν μετακινείται ανάμεσά τους.
Ένα userId που δεν είναι 24-ψήφιο επιστρέφει την ίδια κενή σελίδα αντί για σφάλμα - ένα κακοσχηματισμένο id είναι αναζήτηση που δεν ταιριάζει σε κανέναν, όχι χαλασμένο αίτημα.
Μια παράμετρος που δεν αναγνωρίζουμε
Αν μια παράμετρος μοιάζει με ορθογραφικό λάθος μιας υπαρκτής, ή αν καμία από τις παραμέτρους σας δεν αναγνωρίζεται, το αίτημα απορρίπτεται:
{ "statusCode": 400,
"message": "Unknown query parameter 'externalid'. Did you mean 'externalId'? Valid parameters: limit, offset, email, externalId, userId, q, bots, sortBy, sortOrder" }
Παλαιότερα αυτό ήταν ένα σιωπηλό 200 με ολόκληρη την αφιλτράριστη σελίδα - έτσι ένα ορθογραφικό κόστισε σε έναν integrator μια ολόκληρη μέρα: ένα φίλτρο που δεν κάνει τίποτα μοιάζει ακριβώς με φίλτρο που τα βρήκε όλα.
Οι παράμετροι που φτάνουν χωρίς να τις στείλετε εσείς εξακολουθούν να γίνονται δεκτές και να αγνοούνται: _ και _* (ο cache-buster του jQuery), utm_*, gclid, fbclid, msclkid, καθώς και t / v / cb. Έτσι το [email protected]&_=1724500000 λειτουργεί, όπως και το ?_=1724500000 μόνο του.
Μια άγνωστη παράμετρος που δεν μοιάζει με καμία δική μας - λ.χ. το correlation id μιας πύλης - γίνεται επίσης δεκτή, εφόσον υπάρχει τουλάχιστον μία παράμετρος που καταλαβαίνουμε. Ο κανόνας δεν είναι "απόρριψε ό,τι είναι άγνωστο", αλλά "απόρριψε ένα αίτημα που δεν θα μπορούσε να κάνει αυτό που εννοούσες".
Οι άλλες δύο διαδρομές
Και οι δύο εξακολουθούν να λειτουργούν. Καμία δεν κάνει κάτι που δεν μπορεί το GET /users.
| Διαδρομή | Χρήσιμη ακόμη όταν |
|---|---|
GET /users/by-user-id/:externalId | θέλετε την ίδια την εγγραφή, όχι σελίδα που την περιέχει - επιστρέφει απευθείας το αντικείμενο χρήστη |
GET /users/search?query= | θέλετε την παλιά μορφή: σκέτο array, με όριο, χωρίς total |
Το GET /users/:userId (το εσωτερικό id του Joryio) είναι η κανονική διαδρομή για μία εγγραφή και παραμένει - σε αυτό αναφέρεται το id σε κάθε απάντηση.
Ανώνυμες επαφές
Κάποιος που καταγράφηκε πριν ταυτοποιηθεί δεν έχει email, τηλέφωνο ή όνομα. Η μόνη λαβή που έχετε είναι το anonymousId που δημιούργησε το SDK, και το ?q= το αντιστοιχίζει όταν ο όρος έχει μορφή UUID:
curl "https://api-eu1.joryio.com/api/users?q=3f9d2c1e-7a54-4b2e-9c1d-8e6f5a4b3c2d" \
-H "Authorization: Bearer jry_live_your_api_key"
Για να συνδέσετε το ιστορικό εκείνης της συνεδρίας με γνωστό άτομο, δείτε το POST /users/identify.