Table of Contents |
---|
minLevel | 1 |
---|
maxLevel | 3 |
---|
outline | false |
---|
style | default |
---|
type | list |
---|
printable | true |
---|
|
...
By default, shift opportunities and passthrough opportunities (provided by our partners) are omitted due to additional UI complexity. As a result, this documentation does not cover the shift-related and passthrough fields. If you are interested in including shift or passthrough opportunities, please contact us at support@volunteermatch.org.
Hide your API Key in Front-End Code
For security purposes, your API key should never be written in publicly-accessible front-end code. Please be sure to obscure the API key from the general public.
...
Search Opportunities Using Filters
...
Expand |
---|
title | Recommended Filters - for best experience |
---|
|
categories: List ofCategories enum(Link to Categories Enum) Description: Supports numerous categories of opportunities, also known as cause areas. For a complete list of available enum values, refer to the Categories Enum Documentation. You can either display all options to your volunteers or map VolunteerMatch cause areas to your own distinctions.
keywords: List of Strings Description: Allows for a free-form text search. Performs a keyword search across the following fields of opportunities: title, organization name, description, skills, and categories. Example: keywords = ["education", "volunteering"] searches for opportunities related to education and volunteering.
greatFor: List ofgreatFor enum(Link to GreatFor Enum) returnVirtualAndOnSiteOpps: Boolean Description: Allows users to select between virtual only, in-person only, or both virtual and in-person opportunities. Usage: Set to true to query for both virtual and on-location opportunities based on thelocation input. This input is ignored if virtual is true . Example: returnVirtualAndOnSiteOpps:true allows users to see both types of opportunities.
timeslots: List of timeslots enum (Link to Timeslot Enum) virtual: Boolean virtualOrgRegion: String Description: Filters virtual opportunities by the region where the organization is located. Usage: This input is ignored if virtual is false or omitted. Use free-form text such as a state abbreviation or postal code. Example: virtualOrgRegion: "CA" for California or virtualOrgRegion: "94111" for a specific postal code. For US-based locations, it resolves to a state.
|
...
Location: San Francisco, CA
Cause area: Animals
Great for: Groups, Done in a Day
Keywords: Dogs
Opportunity Type: In-person AND virtual
Code Block |
---|
|
query {
searchOpportunities(
input: {
location: "san francisco"
categories: ["animals"]
greatFor: ["groups", doneInADay]
keywords: ["dogs"]
returnVirtualAndOnSiteOpps: true
pageNumber: 1
numberOfResults: 25
}
) {
currentPage
resultsSize
opportunities {
datePosted
dateRange {
endDate
endTime
ongoing
startDate
startTime
}
description
id
location {
city
postalCode
region
}
parentOrg {
name
url
}
title
url
}
}
}
|
...
Expand |
---|
title | Strongly Recommend Display Fields |
---|
|
title: String description: String Description: The description of the opportunity. Supports basic HTML for formatting, including elements like <div>, <ul>, <p>, <br>, <li>, and <ol>.
plainTextDescription: String parentOrg: OrganizationDetail (Link to OrganizationDetail Schema) dateRange: DateRangeDetail (Link to DateRangeDetail Schema) location: LocationDetail (Link to LocationDetail Schema) categories: List ofCategories enum(Link to Categories Enum) skillsNeeded: String greatFor: List ofgreatFor enum(Link to GreatFor Enum) groupSize: String Description: The required group size for the opportunity. Must be one of the following values: 5, 10, 20, or 10000.
timeCommitment: String Description: The time commitment required for the opportunity, described in plain text. Usage: One of the requirement fields
requirements: RequirementsBean (Links to RequirementsBean Schematimeslots: List of timeslots enum (Link to Timeslot Enum) requirements: RequirementsBean (Links to RequirementsBean Schema) Description: The specific requirements for volunteering for this opportunity. Usage: One of the requirement fields Fields included in RequirementsBean bgCheck: Boolean drLicense: Boolean minimumAge: Integer orientation: Boolean
otherRequirements: String id:Integer Description: The unique identifier for the opportunity assigned by VolunteerMatch. Usage: This field does not need to be displayed but should be stored or passed along to facilitate future connections or actions related to the opportunity.
The following fields are only available when shift-related opportunities are enabled by the VolunteerMatch Opportunities Type Restriction.
|
...
Connection Confirmation Screen
Direct Connect Opportunities
There are some opportunities where we want to direct the user directly to a registration link provided by the nonprofit. You can identify these opportunities by the following criteria: redirectUrl
is NOT NULL ANDconnection_type
is NOT ‘passthrough.' For these opportunities, you still want to create the connection with the createConnection call, but then you should redirect the user to the redirectUrl
. We suggest adding this redirect in the UI on the connection confirmation screen by letting the user know they need to complete registration at another site.
UI Requirements
A Success message
Opportunity Title
Organization Name
Date & Time
Location or Virtual
"Powered by VolunteerMatch" logo
...