Search profiles

This endpoint allows for searching profiles based on specific query parameters like first_name and is_offline, etc. It supports filtering to refine search results and utilizes pagination to handle large datasets efficiently.

Endpoint

GET /api/profiles/search/

Query Parameters:

Core Filters

id (uuid): Filters reservations by the ID.

first_name (string): Filters profiles by the first name.

last_name (string): Filters profiles by the last name.

email (string): Filters profiles by the email.

Sample Requests

# id
GET /api/profiles/search/?id=a31a7f99-87c2-4f13-af1e-502a724634d7

# first_name
GET /api/profiles/search/?first_name=Aaron

# last_name
GET /api/profiles/search/?last_name=James

# email
GET /api/profiles/search/[email protected]

Filtering using Custom Fields

  • custom_fields.custom_field_value.value_info.value (string): Filters profiles by the value_info's value of the custom_field_value within the custom fields.

GET /api/profiles/search/?custom_fields.custom_field_value.value_info.value=blue

Authorization

Requests to this endpoint require an API-KEY in the header:

headers = {
    "API-KEY": "your_unique_api_key_here"
}
response = requests.get("https://api.vomevolunteer.com/api/profiles/search/?first_name=Aaron&last_name=James", headers=headers)

Response Object

The response includes a count of total profiles found, navigation links for pagination, and an array of profile data:

{
    "count": 4,
    "next": null,
    "previous": "http://api.vomevolunteer.com/api/profiles/?page=79",
    "results": [
        {
            "id": "a9a1028f-93a6-401d-9867-1fe59aa2d830",
            "logged_hours": 0,
            "is_offline": true,
            "is_following": false,
            "emergency_contact": {
                "name": "Dana Lauren",
                "phone_number": "+15145555555",
                "relationship": "Sibling"
            },
            "medical_information": {
                "description": "I have allergies to peanuts",
                "has_medical_info": true
            },
            "profile_details": {
                "first_name": "Sara",
                "last_name": "Fried",
                "full_name": "Sara Fried",
                "email": "[email protected]",
                "profile_image": "/media/images/user/profile_image/94859378-6a55-44c9-97ce-a737ba5030ed.jpg",
                "phone_number": "+15145555555",
                "date_of_birth": "2004-05-03",
                "gender": 0, //Female
                "gender_text": "",
                "occupation": 2, //Professional
                "occupation_institution_name": "ABC Corporation",
                "skills": [   
                     {
                        "id": "64fd9793-0b67-4b02-a163-f2a7216292af",
                        "skill_title": "Video Editing"
                     },
                ]
                "languages":  [   
                     {
                        "id": "64fd9793-0b67-4b02-a163-f2a7216292af",
                        "language_name": "French"
                     },
                ],
                "address": "1111 Marcus Avenue, New Hyde Park, NY, USA",
                "latitude_longitude": [
                    "40.7567681",
                    "-73.69960300000001"
                ],
                "age": 26
            },
            "opportunities": [
                {
                    "id": "64fd9793-0b67-4b02-a163-f2a7216292af",
                    "opportunity": {
                        "id": "e478b142-ba67-4c83-a5f2-e87a95d513ee",
                        "title": "Opportunity A",
                        "category": {
                            "title": "Education Testing New"
                        }
                    }
                },
            ],
            "most_recent_shift": null,
            "completed_shifts": 0,
            "profile_tags": [
                {
                    "id": "546cbf95-f9e8-4064-91e4-70eb0ed02e3d",
                    "tag": {
                        "id": "ec007482-7c9a-4ec0-963d-8cb0048ff2fc",
                        "tag_title": "Tag A"
                    }
                },
                {
                    "id": "b575b45d-895d-4983-a8e8-57df91ce1692",
                    "tag": {
                        "id": "990c1afb-b1e7-4acd-8103-a6697b116c35",
                        "tag_title": "Tag B"
                    }
                }
            ],
            "custom_fields": [
                {
                    "id": "4ecc41e2-bb20-458c-986c-472da2208f0b",
                    "custom_field": {
                        "id": "b9e2d0f6-11df-434e-a5db-66bf770b3373",
                        "name": "Custom Title - Boolean Field A",
                        "field_type": 10, //Boolean field
                        "is_active": true
                    },
                    "created_at": "2024-09-19T17:35:35.210435Z",
                    "custom_field_value": {
                        "id": "50ffc051-4db3-444c-a477-1bfd5052b157",
                        "value": true
                    }
                },
                {
                    "id": "4c7aee40-ae20-4021-a18f-ca8e6e915f0a",
                    "custom_field": {
                        "id": "b46da1d3-40bd-4e67-b560-abe937ae3064",
                        "name": "Multi-Select (Colors)",
                        "field_type": 3, //Multiple selection field
                        "is_active": true,
                        "options": [
                            {
                                "id": "41788791-32a0-455b-83a4-1c33262b324a",
                                "value": "Blue",
                                "order": 1
                            },
                            {
                                "id": "aa6f4182-3236-4225-8597-46eed1775d10",
                                "value": "Green",
                                "order": 2
                            },
                            {
                                "id": "ed50ba9a-05cf-418b-b990-d19e5d7907ed",
                                "value": "Yellow",
                            "order": 3
                        }
                    ]
                },
                "created_at": "2024-09-19T17:35:44.867923Z",
                "custom_field_value": [
                    {
                        "id": "73dea3c5-0f53-4c70-8925-106cb8493a21",
                        "value": {
                            "id": "41788791-32a0-455b-83a4-1c33262b324a",
                            "value": "Blue",
                            "order": 1
                        }
                    },
                    {
                        "id": "535ae6f4-99e4-4e56-b991-0017273a15ba",
                        "value": {
                            "id": "aa6f4182-3236-4225-8597-46eed1775d10",
                            "value": "Green",
                            "order": 2
                        }
                    }
                ]
            },
        ]
    }
  ]
}

For a complete description of each field in this response object, you can visit: Profiles

Last updated