Assemble Developer Portal

Opportunities (3.0)

Download OpenAPI specification:Download

This documentation describes how to retrieve, store and update opportunities.

An opportunity brings together the elements required to recruit someone for a role in the form of an advert. This starts with the related role, manager and team needed for any user to exist on Assemble. Then includes logistical/management information such as geographic location, the number of applicants required and duration for the add to be shown.

Please see our support centre to find more information on opportunities.

Opportunities

Opportunity listing

Retrieve a paginated response of opportunities.

The response will change depending on your own permissions. For example, if you are accessing this endpoint with a valid JWT token, you may see internal opportunities and other opportunities that you would not usually see due to your permission level.

query Parameters
radius
number
Default: 10
Example: radius=60

Radius to search (in miles)

lat
number
Example: lat=51.500947

Search by latitude (requires lon)

lon
number
Example: lon=-0.124619

Search by longitude (requires lat)

geojson
integer
Example: geojson=123

Search by geojson id

q
string
Example: q=Shop

Search by opportunity name, description, role name, description and location name

age
number
Example: age=16

Filter by opportunity and role minimum age

role_title
string
Example: role_title=Cheer Team

Filter by role title

role_base
string
Example: role_base=123,654,668

Filter by role base id (comma separated list)

external
boolean

Filter by external opportunities only

partner
string
Example: partner=654,123

Filter by partner id (comma separated list)

type
string
Enum: "One-off" "Ongoing" "Fixed-term"

Filter by opportunity type (comma separated list)

role
string
Example: role=12321,5454

Filter by role id (comma separated list)

team
string
Example: team=123,654

Filter by team id (comma separated list)

subteams
boolean
Default: "false"

Determine if subteams are included when filtering by team ids

advert_start_date
string <date>
Example: advert_start_date=2021-01-05

Filter by advert start date

created_at
string <date>
Example: created_at=2021-03-02

Filter by the opportunity created date

advert_end_date
string <date>
Example: advert_end_date=2022-01-01

Filter by advert end date

expired
boolean
Default: "false"

Determine if we should include expired opportunities

expiring
boolean
Default: "false"

Determine if we should only include expiring opportunities

location
string
Example: location=225,3665,445

Filter by advert location id (comma separated list)

supervisor
string
Example: supervisor=231,532,142

Filter by opportunity supervisor id (comma separated list)

dbs_checks
boolean

Filter by opportunities that require vetting

role_family
string
Example: role_family=Volunteer

Filter by role family name

role_family_id
string
Example: role_family_id=665,445

Filter by role family ids (comma separated list)

view
string
Default: "all"
Enum: "myteam" "ourteam" "all"

Filter by logged-in manager view

unlisted
boolean

Filter by unlisted opportunities

target
string
Enum: "PUBLIC" "INTERNAL"

Filter by opportunity target

advertise_externally
boolean

Filter by external advertisement listed opportunities. Requires the advertise-externally feature.

o
string
Default: "d"
Enum: "a" "d"
Example: o=a

Order the results

s
string
Enum: "start_date" "total_applications" "advert_end_date" "team" "minimum_age" "location" "display_name" "manager" "distance"

Sort the results

Responses

Response Schema: application/json
Array of objects (Opportunity)
object

Response samples

Content type
application/json
{
  • "data": [
    • {
      • "id": 46431,
      • "display_name": "Shop Volunteer (Wimbledon)",
      • "suffix": "Wimbledon",
      • "slug": "shop-volunteer-wimbledon-46431",
      • "short_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Turpis massa tincidunt dui ut ornare lectus sit amet est.",
      • "long_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Turpis massa tincidunt dui ut ornare lectus sit amet est. Vitae justo eget magna fermentum. Elementum curabitur vitae nunc sed velit dignissim sodales. Eu consequat ac felis donec et odio pellentesque diam. In dictum non consectetur a. Nibh sed pulvinar proin gravida hendrerit lectus a. Id aliquet lectus proin nibh nisl condimentum id venenatis. Ut tortor pretium viverra suspendisse potenti nullam ac tortor. Viverra vitae congue eu consequat ac felis donec.",
      • "start_date": "2021-02-01",
      • "advert_start_date": "2021-02-01",
      • "advert_end_date": "2021-08-01",
      • "advertise_externally": true,
      • "minimum_age": 16,
      • "max_applications": 50,
      • "total_places": 5,
      • "image_thumbnail_url": "http://example.com",
      • "image_url": "http://example.com",
      • "available_timeslots": true,
      • "public_url": "http://example.com",
      • "external": true,
      • "advert_target": "string",
      • "unlisted": true,
      • "default_phone_country_code": "string",
      • "type": "Ongoing",
      • "created_at": "2019-08-24T14:15:22Z",
      • "updated_at": "2019-08-24T14:15:22Z",
      • "minimum_address_history": 0,
      • "duration": 0,
      • "total_applications": 20,
      • "distance": 0,
      • "advert_location": {
        • "id": 54654,
        • "name": "11 Downing St",
        • "status": "active",
        • "company_name": "string",
        • "street": "11 Downing St",
        • "street_second": "string",
        • "street_third": "string",
        • "city": "London",
        • "county": "Westminster",
        • "postcode": "SW1A 2AB",
        • "country": "United Kingdom",
        • "address": "11 Downing St, Westminster, London SW1A 2AB",
        • "lat": 51.503274,
        • "long": -0.127822
        },
      • "team": {
        • "id": "3521",
        • "display_name": "Headquarters",
        • "parent_id": 1424,
        • "name": "Headquarters",
        • "description": "string",
        • "geo_location": "string",
        • "catchment_area_id": "string",
        • "icon": "fa fa-building",
        • "show_on_public_site": false,
        • "show_on_near_me_map": false,
        • "ceiling_enabled": false,
        • "public_url": "http://example.com",
        • "hidden": false,
        • "disabled": false,
        • "external_reference": "string"
        },
      • "partner": { },
      • "supervisors": [
        • {
          • "id": 0,
          • "supervisor": {
            • "id": 46485,
            • "display_name": "John Smith",
            • "title": "Mr",
            • "profile_photo_url": "http://example.com",
            • "can_manage": true,
            • "role_name": "Volunteer",
            • "team_name": "Kent",
            • "status": {
              • "id": "1",
              • "name": "Active",
              • "contactable": true
              }
            },
          • "primary": true
          }
        ],
      • "role_profile": {
        • "id": 241421,
        • "name": "Shop volunteer",
        • "display_name": "Shop volunteer",
        • "type": "volunteer",
        • "role_base": "Event",
        • "approved": true,
        • "short_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Enim tortor at auctor urna.",
        • "long_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Enim tortor at auctor urna. Convallis aenean et tortor at risus. Vitae proin sagittis nisl rhoncus mattis. Scelerisque eleifend donec pretium vulputate sapien nec sagittis. Orci a scelerisque purus semper eget duis at tellus at.",
        • "disclaimer": "Enim tortor at auctor urna.",
        • "volunteer_manager": "Community manager",
        • "why_we_want_you": "Scelerisque eleifend donec pretium vulputate sapien nec sagittis. Orci a scelerisque purus semper eget duis at tellus at.",
        • "status": "active",
        • "editable": true,
        • "recruitable": true,
        • "minimum_age": 16,
        • "pdf_url": "http://example.com",
        • "risk_assessment_url": "http://example.com",
        • "minimum_address_history": "2",
        • "receives_team_notifications": true,
        • "family": {
          • "id": 21421,
          • "name": "Volunteer"
          },
        • "recruitment_category": {
          • "id": 12412,
          • "name": "Full",
          • "stages": [
            • {
              • "id": 21412,
              • "name": "Application",
              • "display_name": "Applied",
              • "actions": [
                • {
                  • "id": 421421,
                  • "name": "string",
                  • "action_stage_id": 0,
                  • "settings": { }
                  }
                ]
              }
            ]
          },
        • "images": [],
        • "tasks": [
          • {
            • "id": 532523,
            • "task": "A pellentesque sit amet porttitor eget."
            }
          ],
        • "skills": [
          • {
            • "id": 543,
            • "skill": "Senectus et netus et malesuada fames ac turpis egestas maecenas."
            }
          ],
        • "benefits": [
          • {
            • "id": 5435,
            • "benefit": "Accumsan lacus vel facilisis volutpat est velit egestas dui id."
            }
          ],
        • "base": {
          • "id": 64,
          • "name": "Community",
          • "icon": "fa fa-users",
          • "order_id": 1
          }
        },
      • "subLocations": [
        • {
          • "id": 324,
          • "description": "string",
          • "location": {
            • "id": 54654,
            • "name": "11 Downing St",
            • "status": "active",
            • "company_name": "string",
            • "street": "11 Downing St",
            • "street_second": "string",
            • "street_third": "string",
            • "city": "London",
            • "county": "Westminster",
            • "postcode": "SW1A 2AB",
            • "country": "United Kingdom",
            • "address": "11 Downing St, Westminster, London SW1A 2AB",
            • "lat": 51.503274,
            • "long": -0.127822
            },
          • "timeslots": [
            • {
              • "id": 432423,
              • "date": "2021-02-04",
              • "start_time": "13:00",
              • "end_time": "18:00",
              • "min_capacity": "2",
              • "places": "25",
              • "max_applications": 50,
              • "users": [
                • {
                  • "status": {
                    },
                  • "start_date": "2019-08-24",
                  • "primary_phone": "string",
                  • "id": 46485,
                  • "display_name": "John Smith",
                  • "title": "Mr",
                  • "profile_photo_url": "http://example.com",
                  • "can_manage": true,
                  • "role_name": "Volunteer",
                  • "team_name": "Kent"
                  }
                ]
              }
            ]
          }
        ],
      • "image": {
        • "meta": {
          • "pagination": {
            • "total": "string",
            • "count": "string",
            • "per_page": "string",
            • "current_page": "string",
            • "total_pages": "string",
            • "links": {
              • "next": "string",
              • "previous": "string"
              }
            }
          }
        }
      }
    ],
  • "meta": {
    • "pagination": {
      • "total": "string",
      • "count": "string",
      • "per_page": "string",
      • "current_page": "string",
      • "total_pages": "string",
      • "links": {
        • "next": "string",
        • "previous": "string"
        }
      }
    }
}

Create a new opportunity

Create a new opportunity

Authorizations:
JWT
Request Body schema: application/json
id
integer

The unique ID of the Opportunity record

suffix
string

Opportunity suffix

slug
string

Opportunity slug

short_advert
string

Short advert

long_advert
string

Long advert

start_date
string <date>

Start date

advert_start_date
string <date>

Advert start date

advert_end_date
string

Advert end date

advertise_externally
boolean

Determine if this opportunity can be advertised externally

minimum_age
integer

Opportunity minimum age

max_applications
integer

Maximum applications

available_timeslots
boolean

Determine if there are any available timeslots

external
boolean

Determine if the opportunity is external

advert_target
string

Opportunity target

unlisted
boolean

Determine if the opportunity is unlisted

type
string
Enum: "One-off" "Ongoing" "Fixed-term"

Opportunity type

created_at
string <date-time>

Created at date

updated_at
string <date-time>

Update at date

minimum_address_history
integer

Minimum address history requirement

duration
integer

Opportunity duration

total_applications
integer

Total applications

distance
integer

Distance (if searching)

object (GeoLocation)
object (Team)

Detailed team information

partner
object

Opportunity partner

Array of objects

Opportunity supervisors

object (RoleProfile)

Detailed role profile information

Array of objects (OpportunitySubLocation)

Opportunity sub locations

object (meta)

Responses

Response Schema: application/json
object (Opportunity)

Request samples

Content type
application/json
{
  • "id": 46431,
  • "suffix": "Wimbledon",
  • "slug": "shop-volunteer-wimbledon-46431",
  • "short_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Turpis massa tincidunt dui ut ornare lectus sit amet est.",
  • "long_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Turpis massa tincidunt dui ut ornare lectus sit amet est. Vitae justo eget magna fermentum. Elementum curabitur vitae nunc sed velit dignissim sodales. Eu consequat ac felis donec et odio pellentesque diam. In dictum non consectetur a. Nibh sed pulvinar proin gravida hendrerit lectus a. Id aliquet lectus proin nibh nisl condimentum id venenatis. Ut tortor pretium viverra suspendisse potenti nullam ac tortor. Viverra vitae congue eu consequat ac felis donec.",
  • "start_date": "2021-02-01",
  • "advert_start_date": "2021-02-01",
  • "advert_end_date": "2021-08-01",
  • "advertise_externally": true,
  • "minimum_age": 16,
  • "max_applications": 50,
  • "available_timeslots": true,
  • "external": true,
  • "advert_target": "string",
  • "unlisted": true,
  • "type": "Ongoing",
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "minimum_address_history": 0,
  • "duration": 0,
  • "total_applications": 20,
  • "distance": 0,
  • "advert_location": {
    • "id": 54654,
    • "name": "11 Downing St",
    • "status": "active",
    • "company_name": "string",
    • "street": "11 Downing St",
    • "street_second": "string",
    • "street_third": "string",
    • "city": "London",
    • "county": "Westminster",
    • "postcode": "SW1A 2AB",
    • "country": "United Kingdom",
    • "address": "11 Downing St, Westminster, London SW1A 2AB",
    • "lat": 51.503274,
    • "long": -0.127822
    },
  • "team": {
    • "id": "3521",
    • "parent_id": 1424,
    • "name": "Headquarters",
    • "description": "string",
    • "geo_location": "string",
    • "catchment_area_id": "string",
    • "icon": "fa fa-building",
    • "show_on_public_site": false,
    • "show_on_near_me_map": false,
    • "ceiling_enabled": false,
    • "hidden": false,
    • "disabled": false,
    • "external_reference": "string"
    },
  • "partner": { },
  • "supervisors": [
    • {
      • "id": 0,
      • "supervisor": {
        • "id": 46485,
        • "title": "Mr",
        • "can_manage": true,
        • "status": { }
        },
      • "primary": true
      }
    ],
  • "role_profile": {
    • "id": 241421,
    • "name": "Shop volunteer",
    • "type": "volunteer",
    • "approved": true,
    • "short_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Enim tortor at auctor urna.",
    • "long_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Enim tortor at auctor urna. Convallis aenean et tortor at risus. Vitae proin sagittis nisl rhoncus mattis. Scelerisque eleifend donec pretium vulputate sapien nec sagittis. Orci a scelerisque purus semper eget duis at tellus at.",
    • "disclaimer": "Enim tortor at auctor urna.",
    • "volunteer_manager": "Community manager",
    • "why_we_want_you": "Scelerisque eleifend donec pretium vulputate sapien nec sagittis. Orci a scelerisque purus semper eget duis at tellus at.",
    • "status": "active",
    • "editable": true,
    • "recruitable": true,
    • "minimum_age": 16,
    • "pdf_url": "http://example.com",
    • "risk_assessment_url": "http://example.com",
    • "minimum_address_history": "2",
    • "receives_team_notifications": true,
    • "family": {
      • "id": 21421,
      • "name": "Volunteer"
      },
    • "recruitment_category": {
      • "id": 12412,
      • "name": "Full",
      • "stages": [
        • {
          • "id": 21412,
          • "name": "Application",
          • "display_name": "Applied",
          • "actions": [
            • {
              • "id": 421421,
              • "name": "string",
              • "action_stage_id": 0,
              • "settings": { }
              }
            ]
          }
        ]
      },
    • "images": [
      • {
        • "id": 45645,
        • "thumbnails": { }
        }
      ],
    • "tasks": [
      • {
        • "id": 532523,
        • "task": "A pellentesque sit amet porttitor eget."
        }
      ],
    • "skills": [
      • {
        • "id": 543,
        • "skill": "Senectus et netus et malesuada fames ac turpis egestas maecenas."
        }
      ],
    • "benefits": [
      • {
        • "id": 5435,
        • "benefit": "Accumsan lacus vel facilisis volutpat est velit egestas dui id."
        }
      ],
    • "base": {
      • "id": 64,
      • "name": "Community",
      • "icon": "fa fa-users",
      • "order_id": 1
      }
    },
  • "subLocations": [
    • {
      • "id": 324,
      • "description": "string",
      • "location": {
        • "id": 54654,
        • "name": "11 Downing St",
        • "status": "active",
        • "company_name": "string",
        • "street": "11 Downing St",
        • "street_second": "string",
        • "street_third": "string",
        • "city": "London",
        • "county": "Westminster",
        • "postcode": "SW1A 2AB",
        • "country": "United Kingdom",
        • "address": "11 Downing St, Westminster, London SW1A 2AB",
        • "lat": 51.503274,
        • "long": -0.127822
        },
      • "timeslots": [
        • {
          • "id": 432423,
          • "date": "2021-02-04",
          • "start_time": "13:00",
          • "end_time": "18:00",
          • "min_capacity": "2",
          • "max_applications": 50
          }
        ]
      }
    ],
  • "image": {
    • "meta": {
      • "pagination": { }
      }
    }
}

Response samples

Content type
application/json
{
  • "data": {
    • "id": 46431,
    • "display_name": "Shop Volunteer (Wimbledon)",
    • "suffix": "Wimbledon",
    • "slug": "shop-volunteer-wimbledon-46431",
    • "short_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Turpis massa tincidunt dui ut ornare lectus sit amet est.",
    • "long_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Turpis massa tincidunt dui ut ornare lectus sit amet est. Vitae justo eget magna fermentum. Elementum curabitur vitae nunc sed velit dignissim sodales. Eu consequat ac felis donec et odio pellentesque diam. In dictum non consectetur a. Nibh sed pulvinar proin gravida hendrerit lectus a. Id aliquet lectus proin nibh nisl condimentum id venenatis. Ut tortor pretium viverra suspendisse potenti nullam ac tortor. Viverra vitae congue eu consequat ac felis donec.",
    • "start_date": "2021-02-01",
    • "advert_start_date": "2021-02-01",
    • "advert_end_date": "2021-08-01",
    • "advertise_externally": true,
    • "minimum_age": 16,
    • "max_applications": 50,
    • "total_places": 5,
    • "image_thumbnail_url": "http://example.com",
    • "image_url": "http://example.com",
    • "available_timeslots": true,
    • "public_url": "http://example.com",
    • "external": true,
    • "advert_target": "string",
    • "unlisted": true,
    • "default_phone_country_code": "string",
    • "type": "Ongoing",
    • "created_at": "2019-08-24T14:15:22Z",
    • "updated_at": "2019-08-24T14:15:22Z",
    • "minimum_address_history": 0,
    • "duration": 0,
    • "total_applications": 20,
    • "distance": 0,
    • "advert_location": {
      • "id": 54654,
      • "name": "11 Downing St",
      • "status": "active",
      • "company_name": "string",
      • "street": "11 Downing St",
      • "street_second": "string",
      • "street_third": "string",
      • "city": "London",
      • "county": "Westminster",
      • "postcode": "SW1A 2AB",
      • "country": "United Kingdom",
      • "address": "11 Downing St, Westminster, London SW1A 2AB",
      • "lat": 51.503274,
      • "long": -0.127822
      },
    • "team": {
      • "id": "3521",
      • "display_name": "Headquarters",
      • "parent_id": 1424,
      • "name": "Headquarters",
      • "description": "string",
      • "geo_location": "string",
      • "catchment_area_id": "string",
      • "icon": "fa fa-building",
      • "show_on_public_site": false,
      • "show_on_near_me_map": false,
      • "ceiling_enabled": false,
      • "public_url": "http://example.com",
      • "hidden": false,
      • "disabled": false,
      • "external_reference": "string"
      },
    • "partner": { },
    • "supervisors": [
      • {
        • "id": 0,
        • "supervisor": {
          • "id": 46485,
          • "display_name": "John Smith",
          • "title": "Mr",
          • "profile_photo_url": "http://example.com",
          • "can_manage": true,
          • "role_name": "Volunteer",
          • "team_name": "Kent",
          • "status": {
            • "id": "1",
            • "name": "Active",
            • "contactable": true
            }
          },
        • "primary": true
        }
      ],
    • "role_profile": {
      • "id": 241421,
      • "name": "Shop volunteer",
      • "display_name": "Shop volunteer",
      • "type": "volunteer",
      • "role_base": "Event",
      • "approved": true,
      • "short_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Enim tortor at auctor urna.",
      • "long_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Enim tortor at auctor urna. Convallis aenean et tortor at risus. Vitae proin sagittis nisl rhoncus mattis. Scelerisque eleifend donec pretium vulputate sapien nec sagittis. Orci a scelerisque purus semper eget duis at tellus at.",
      • "disclaimer": "Enim tortor at auctor urna.",
      • "volunteer_manager": "Community manager",
      • "why_we_want_you": "Scelerisque eleifend donec pretium vulputate sapien nec sagittis. Orci a scelerisque purus semper eget duis at tellus at.",
      • "status": "active",
      • "editable": true,
      • "recruitable": true,
      • "minimum_age": 16,
      • "pdf_url": "http://example.com",
      • "risk_assessment_url": "http://example.com",
      • "minimum_address_history": "2",
      • "receives_team_notifications": true,
      • "family": {
        • "id": 21421,
        • "name": "Volunteer"
        },
      • "recruitment_category": {
        • "id": 12412,
        • "name": "Full",
        • "stages": [
          • {
            • "id": 21412,
            • "name": "Application",
            • "display_name": "Applied",
            • "actions": [
              • {
                • "id": 421421,
                • "name": "string",
                • "action_stage_id": 0,
                • "settings": { }
                }
              ]
            }
          ]
        },
      • "images": [],
      • "tasks": [
        • {
          • "id": 532523,
          • "task": "A pellentesque sit amet porttitor eget."
          }
        ],
      • "skills": [
        • {
          • "id": 543,
          • "skill": "Senectus et netus et malesuada fames ac turpis egestas maecenas."
          }
        ],
      • "benefits": [
        • {
          • "id": 5435,
          • "benefit": "Accumsan lacus vel facilisis volutpat est velit egestas dui id."
          }
        ],
      • "base": {
        • "id": 64,
        • "name": "Community",
        • "icon": "fa fa-users",
        • "order_id": 1
        }
      },
    • "subLocations": [
      • {
        • "id": 324,
        • "description": "string",
        • "location": {
          • "id": 54654,
          • "name": "11 Downing St",
          • "status": "active",
          • "company_name": "string",
          • "street": "11 Downing St",
          • "street_second": "string",
          • "street_third": "string",
          • "city": "London",
          • "county": "Westminster",
          • "postcode": "SW1A 2AB",
          • "country": "United Kingdom",
          • "address": "11 Downing St, Westminster, London SW1A 2AB",
          • "lat": 51.503274,
          • "long": -0.127822
          },
        • "timeslots": [
          • {
            • "id": 432423,
            • "date": "2021-02-04",
            • "start_time": "13:00",
            • "end_time": "18:00",
            • "min_capacity": "2",
            • "places": "25",
            • "max_applications": 50,
            • "users": [
              • {
                • "status": {
                  • "id": "1",
                  • "name": "Active",
                  • "contactable": true
                  },
                • "start_date": "2019-08-24",
                • "primary_phone": "string",
                • "id": 46485,
                • "display_name": "John Smith",
                • "title": "Mr",
                • "profile_photo_url": "http://example.com",
                • "can_manage": true,
                • "role_name": "Volunteer",
                • "team_name": "Kent"
                }
              ]
            }
          ]
        }
      ],
    • "image": {
      • "meta": {
        • "pagination": {
          • "total": "string",
          • "count": "string",
          • "per_page": "string",
          • "current_page": "string",
          • "total_pages": "string",
          • "links": {
            • "next": "string",
            • "previous": "string"
            }
          }
        }
      }
    }
}

Show an opportunity

Retrieve a single opportunity details

path Parameters
id
required
string

Opportunity id

query Parameters
include
string
Enum: "sublocations" "image" "statistics" "activity_category" "event"
Example: include=sublocations

Available opportunity includes (comma separated list)

Responses

Response Schema: application/json
object (Opportunity)

Response samples

Content type
application/json
{
  • "data": {
    • "id": 46431,
    • "display_name": "Shop Volunteer (Wimbledon)",
    • "suffix": "Wimbledon",
    • "slug": "shop-volunteer-wimbledon-46431",
    • "short_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Turpis massa tincidunt dui ut ornare lectus sit amet est.",
    • "long_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Turpis massa tincidunt dui ut ornare lectus sit amet est. Vitae justo eget magna fermentum. Elementum curabitur vitae nunc sed velit dignissim sodales. Eu consequat ac felis donec et odio pellentesque diam. In dictum non consectetur a. Nibh sed pulvinar proin gravida hendrerit lectus a. Id aliquet lectus proin nibh nisl condimentum id venenatis. Ut tortor pretium viverra suspendisse potenti nullam ac tortor. Viverra vitae congue eu consequat ac felis donec.",
    • "start_date": "2021-02-01",
    • "advert_start_date": "2021-02-01",
    • "advert_end_date": "2021-08-01",
    • "advertise_externally": true,
    • "minimum_age": 16,
    • "max_applications": 50,
    • "total_places": 5,
    • "image_thumbnail_url": "http://example.com",
    • "image_url": "http://example.com",
    • "available_timeslots": true,
    • "public_url": "http://example.com",
    • "external": true,
    • "advert_target": "string",
    • "unlisted": true,
    • "default_phone_country_code": "string",
    • "type": "Ongoing",
    • "created_at": "2019-08-24T14:15:22Z",
    • "updated_at": "2019-08-24T14:15:22Z",
    • "minimum_address_history": 0,
    • "duration": 0,
    • "total_applications": 20,
    • "distance": 0,
    • "advert_location": {
      • "id": 54654,
      • "name": "11 Downing St",
      • "status": "active",
      • "company_name": "string",
      • "street": "11 Downing St",
      • "street_second": "string",
      • "street_third": "string",
      • "city": "London",
      • "county": "Westminster",
      • "postcode": "SW1A 2AB",
      • "country": "United Kingdom",
      • "address": "11 Downing St, Westminster, London SW1A 2AB",
      • "lat": 51.503274,
      • "long": -0.127822
      },
    • "team": {
      • "id": "3521",
      • "display_name": "Headquarters",
      • "parent_id": 1424,
      • "name": "Headquarters",
      • "description": "string",
      • "geo_location": "string",
      • "catchment_area_id": "string",
      • "icon": "fa fa-building",
      • "show_on_public_site": false,
      • "show_on_near_me_map": false,
      • "ceiling_enabled": false,
      • "public_url": "http://example.com",
      • "hidden": false,
      • "disabled": false,
      • "external_reference": "string"
      },
    • "partner": { },
    • "supervisors": [
      • {
        • "id": 0,
        • "supervisor": {
          • "id": 46485,
          • "display_name": "John Smith",
          • "title": "Mr",
          • "profile_photo_url": "http://example.com",
          • "can_manage": true,
          • "role_name": "Volunteer",
          • "team_name": "Kent",
          • "status": {
            • "id": "1",
            • "name": "Active",
            • "contactable": true
            }
          },
        • "primary": true
        }
      ],
    • "role_profile": {
      • "id": 241421,
      • "name": "Shop volunteer",
      • "display_name": "Shop volunteer",
      • "type": "volunteer",
      • "role_base": "Event",
      • "approved": true,
      • "short_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Enim tortor at auctor urna.",
      • "long_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Enim tortor at auctor urna. Convallis aenean et tortor at risus. Vitae proin sagittis nisl rhoncus mattis. Scelerisque eleifend donec pretium vulputate sapien nec sagittis. Orci a scelerisque purus semper eget duis at tellus at.",
      • "disclaimer": "Enim tortor at auctor urna.",
      • "volunteer_manager": "Community manager",
      • "why_we_want_you": "Scelerisque eleifend donec pretium vulputate sapien nec sagittis. Orci a scelerisque purus semper eget duis at tellus at.",
      • "status": "active",
      • "editable": true,
      • "recruitable": true,
      • "minimum_age": 16,
      • "pdf_url": "http://example.com",
      • "risk_assessment_url": "http://example.com",
      • "minimum_address_history": "2",
      • "receives_team_notifications": true,
      • "family": {
        • "id": 21421,
        • "name": "Volunteer"
        },
      • "recruitment_category": {
        • "id": 12412,
        • "name": "Full",
        • "stages": [
          • {
            • "id": 21412,
            • "name": "Application",
            • "display_name": "Applied",
            • "actions": [
              • {
                • "id": 421421,
                • "name": "string",
                • "action_stage_id": 0,
                • "settings": { }
                }
              ]
            }
          ]
        },
      • "images": [],
      • "tasks": [
        • {
          • "id": 532523,
          • "task": "A pellentesque sit amet porttitor eget."
          }
        ],
      • "skills": [
        • {
          • "id": 543,
          • "skill": "Senectus et netus et malesuada fames ac turpis egestas maecenas."
          }
        ],
      • "benefits": [
        • {
          • "id": 5435,
          • "benefit": "Accumsan lacus vel facilisis volutpat est velit egestas dui id."
          }
        ],
      • "base": {
        • "id": 64,
        • "name": "Community",
        • "icon": "fa fa-users",
        • "order_id": 1
        }
      },
    • "subLocations": [
      • {
        • "id": 324,
        • "description": "string",
        • "location": {
          • "id": 54654,
          • "name": "11 Downing St",
          • "status": "active",
          • "company_name": "string",
          • "street": "11 Downing St",
          • "street_second": "string",
          • "street_third": "string",
          • "city": "London",
          • "county": "Westminster",
          • "postcode": "SW1A 2AB",
          • "country": "United Kingdom",
          • "address": "11 Downing St, Westminster, London SW1A 2AB",
          • "lat": 51.503274,
          • "long": -0.127822
          },
        • "timeslots": [
          • {
            • "id": 432423,
            • "date": "2021-02-04",
            • "start_time": "13:00",
            • "end_time": "18:00",
            • "min_capacity": "2",
            • "places": "25",
            • "max_applications": 50,
            • "users": [
              • {
                • "status": {
                  • "id": "1",
                  • "name": "Active",
                  • "contactable": true
                  },
                • "start_date": "2019-08-24",
                • "primary_phone": "string",
                • "id": 46485,
                • "display_name": "John Smith",
                • "title": "Mr",
                • "profile_photo_url": "http://example.com",
                • "can_manage": true,
                • "role_name": "Volunteer",
                • "team_name": "Kent"
                }
              ]
            }
          ]
        }
      ],
    • "image": {
      • "meta": {
        • "pagination": {
          • "total": "string",
          • "count": "string",
          • "per_page": "string",
          • "current_page": "string",
          • "total_pages": "string",
          • "links": {
            • "next": "string",
            • "previous": "string"
            }
          }
        }
      }
    }
}

Update an opportunity

Update an opportunities details

Authorizations:
JWT
path Parameters
id
required
string

Opportunity id

Request Body schema: application/json
id
integer

The unique ID of the Opportunity record

suffix
string

Opportunity suffix

slug
string

Opportunity slug

short_advert
string

Short advert

long_advert
string

Long advert

start_date
string <date>

Start date

advert_start_date
string <date>

Advert start date

advert_end_date
string

Advert end date

advertise_externally
boolean

Determine if this opportunity can be advertised externally

minimum_age
integer

Opportunity minimum age

max_applications
integer

Maximum applications

available_timeslots
boolean

Determine if there are any available timeslots

external
boolean

Determine if the opportunity is external

advert_target
string

Opportunity target

unlisted
boolean

Determine if the opportunity is unlisted

type
string
Enum: "One-off" "Ongoing" "Fixed-term"

Opportunity type

created_at
string <date-time>

Created at date

updated_at
string <date-time>

Update at date

minimum_address_history
integer

Minimum address history requirement

duration
integer

Opportunity duration

total_applications
integer

Total applications

distance
integer

Distance (if searching)

object (GeoLocation)
object (Team)

Detailed team information

partner
object

Opportunity partner

Array of objects

Opportunity supervisors

object (RoleProfile)

Detailed role profile information

Array of objects (OpportunitySubLocation)

Opportunity sub locations

object (meta)

Responses

Response Schema: application/json
object (Opportunity)

Request samples

Content type
application/json
{
  • "id": 46431,
  • "suffix": "Wimbledon",
  • "slug": "shop-volunteer-wimbledon-46431",
  • "short_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Turpis massa tincidunt dui ut ornare lectus sit amet est.",
  • "long_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Turpis massa tincidunt dui ut ornare lectus sit amet est. Vitae justo eget magna fermentum. Elementum curabitur vitae nunc sed velit dignissim sodales. Eu consequat ac felis donec et odio pellentesque diam. In dictum non consectetur a. Nibh sed pulvinar proin gravida hendrerit lectus a. Id aliquet lectus proin nibh nisl condimentum id venenatis. Ut tortor pretium viverra suspendisse potenti nullam ac tortor. Viverra vitae congue eu consequat ac felis donec.",
  • "start_date": "2021-02-01",
  • "advert_start_date": "2021-02-01",
  • "advert_end_date": "2021-08-01",
  • "advertise_externally": true,
  • "minimum_age": 16,
  • "max_applications": 50,
  • "available_timeslots": true,
  • "external": true,
  • "advert_target": "string",
  • "unlisted": true,
  • "type": "Ongoing",
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "minimum_address_history": 0,
  • "duration": 0,
  • "total_applications": 20,
  • "distance": 0,
  • "advert_location": {
    • "id": 54654,
    • "name": "11 Downing St",
    • "status": "active",
    • "company_name": "string",
    • "street": "11 Downing St",
    • "street_second": "string",
    • "street_third": "string",
    • "city": "London",
    • "county": "Westminster",
    • "postcode": "SW1A 2AB",
    • "country": "United Kingdom",
    • "address": "11 Downing St, Westminster, London SW1A 2AB",
    • "lat": 51.503274,
    • "long": -0.127822
    },
  • "team": {
    • "id": "3521",
    • "parent_id": 1424,
    • "name": "Headquarters",
    • "description": "string",
    • "geo_location": "string",
    • "catchment_area_id": "string",
    • "icon": "fa fa-building",
    • "show_on_public_site": false,
    • "show_on_near_me_map": false,
    • "ceiling_enabled": false,
    • "hidden": false,
    • "disabled": false,
    • "external_reference": "string"
    },
  • "partner": { },
  • "supervisors": [
    • {
      • "id": 0,
      • "supervisor": {
        • "id": 46485,
        • "title": "Mr",
        • "can_manage": true,
        • "status": { }
        },
      • "primary": true
      }
    ],
  • "role_profile": {
    • "id": 241421,
    • "name": "Shop volunteer",
    • "type": "volunteer",
    • "approved": true,
    • "short_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Enim tortor at auctor urna.",
    • "long_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Enim tortor at auctor urna. Convallis aenean et tortor at risus. Vitae proin sagittis nisl rhoncus mattis. Scelerisque eleifend donec pretium vulputate sapien nec sagittis. Orci a scelerisque purus semper eget duis at tellus at.",
    • "disclaimer": "Enim tortor at auctor urna.",
    • "volunteer_manager": "Community manager",
    • "why_we_want_you": "Scelerisque eleifend donec pretium vulputate sapien nec sagittis. Orci a scelerisque purus semper eget duis at tellus at.",
    • "status": "active",
    • "editable": true,
    • "recruitable": true,
    • "minimum_age": 16,
    • "pdf_url": "http://example.com",
    • "risk_assessment_url": "http://example.com",
    • "minimum_address_history": "2",
    • "receives_team_notifications": true,
    • "family": {
      • "id": 21421,
      • "name": "Volunteer"
      },
    • "recruitment_category": {
      • "id": 12412,
      • "name": "Full",
      • "stages": [
        • {
          • "id": 21412,
          • "name": "Application",
          • "display_name": "Applied",
          • "actions": [
            • {
              • "id": 421421,
              • "name": "string",
              • "action_stage_id": 0,
              • "settings": { }
              }
            ]
          }
        ]
      },
    • "images": [
      • {
        • "id": 45645,
        • "thumbnails": { }
        }
      ],
    • "tasks": [
      • {
        • "id": 532523,
        • "task": "A pellentesque sit amet porttitor eget."
        }
      ],
    • "skills": [
      • {
        • "id": 543,
        • "skill": "Senectus et netus et malesuada fames ac turpis egestas maecenas."
        }
      ],
    • "benefits": [
      • {
        • "id": 5435,
        • "benefit": "Accumsan lacus vel facilisis volutpat est velit egestas dui id."
        }
      ],
    • "base": {
      • "id": 64,
      • "name": "Community",
      • "icon": "fa fa-users",
      • "order_id": 1
      }
    },
  • "subLocations": [
    • {
      • "id": 324,
      • "description": "string",
      • "location": {
        • "id": 54654,
        • "name": "11 Downing St",
        • "status": "active",
        • "company_name": "string",
        • "street": "11 Downing St",
        • "street_second": "string",
        • "street_third": "string",
        • "city": "London",
        • "county": "Westminster",
        • "postcode": "SW1A 2AB",
        • "country": "United Kingdom",
        • "address": "11 Downing St, Westminster, London SW1A 2AB",
        • "lat": 51.503274,
        • "long": -0.127822
        },
      • "timeslots": [
        • {
          • "id": 432423,
          • "date": "2021-02-04",
          • "start_time": "13:00",
          • "end_time": "18:00",
          • "min_capacity": "2",
          • "max_applications": 50
          }
        ]
      }
    ],
  • "image": {
    • "meta": {
      • "pagination": { }
      }
    }
}

Response samples

Content type
application/json
{
  • "data": {
    • "id": 46431,
    • "display_name": "Shop Volunteer (Wimbledon)",
    • "suffix": "Wimbledon",
    • "slug": "shop-volunteer-wimbledon-46431",
    • "short_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Turpis massa tincidunt dui ut ornare lectus sit amet est.",
    • "long_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Turpis massa tincidunt dui ut ornare lectus sit amet est. Vitae justo eget magna fermentum. Elementum curabitur vitae nunc sed velit dignissim sodales. Eu consequat ac felis donec et odio pellentesque diam. In dictum non consectetur a. Nibh sed pulvinar proin gravida hendrerit lectus a. Id aliquet lectus proin nibh nisl condimentum id venenatis. Ut tortor pretium viverra suspendisse potenti nullam ac tortor. Viverra vitae congue eu consequat ac felis donec.",
    • "start_date": "2021-02-01",
    • "advert_start_date": "2021-02-01",
    • "advert_end_date": "2021-08-01",
    • "advertise_externally": true,
    • "minimum_age": 16,
    • "max_applications": 50,
    • "total_places": 5,
    • "image_thumbnail_url": "http://example.com",
    • "image_url": "http://example.com",
    • "available_timeslots": true,
    • "public_url": "http://example.com",
    • "external": true,
    • "advert_target": "string",
    • "unlisted": true,
    • "default_phone_country_code": "string",
    • "type": "Ongoing",
    • "created_at": "2019-08-24T14:15:22Z",
    • "updated_at": "2019-08-24T14:15:22Z",
    • "minimum_address_history": 0,
    • "duration": 0,
    • "total_applications": 20,
    • "distance": 0,
    • "advert_location": {
      • "id": 54654,
      • "name": "11 Downing St",
      • "status": "active",
      • "company_name": "string",
      • "street": "11 Downing St",
      • "street_second": "string",
      • "street_third": "string",
      • "city": "London",
      • "county": "Westminster",
      • "postcode": "SW1A 2AB",
      • "country": "United Kingdom",
      • "address": "11 Downing St, Westminster, London SW1A 2AB",
      • "lat": 51.503274,
      • "long": -0.127822
      },
    • "team": {
      • "id": "3521",
      • "display_name": "Headquarters",
      • "parent_id": 1424,
      • "name": "Headquarters",
      • "description": "string",
      • "geo_location": "string",
      • "catchment_area_id": "string",
      • "icon": "fa fa-building",
      • "show_on_public_site": false,
      • "show_on_near_me_map": false,
      • "ceiling_enabled": false,
      • "public_url": "http://example.com",
      • "hidden": false,
      • "disabled": false,
      • "external_reference": "string"
      },
    • "partner": { },
    • "supervisors": [
      • {
        • "id": 0,
        • "supervisor": {
          • "id": 46485,
          • "display_name": "John Smith",
          • "title": "Mr",
          • "profile_photo_url": "http://example.com",
          • "can_manage": true,
          • "role_name": "Volunteer",
          • "team_name": "Kent",
          • "status": {
            • "id": "1",
            • "name": "Active",
            • "contactable": true
            }
          },
        • "primary": true
        }
      ],
    • "role_profile": {
      • "id": 241421,
      • "name": "Shop volunteer",
      • "display_name": "Shop volunteer",
      • "type": "volunteer",
      • "role_base": "Event",
      • "approved": true,
      • "short_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Enim tortor at auctor urna.",
      • "long_advert": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Enim tortor at auctor urna. Convallis aenean et tortor at risus. Vitae proin sagittis nisl rhoncus mattis. Scelerisque eleifend donec pretium vulputate sapien nec sagittis. Orci a scelerisque purus semper eget duis at tellus at.",
      • "disclaimer": "Enim tortor at auctor urna.",
      • "volunteer_manager": "Community manager",
      • "why_we_want_you": "Scelerisque eleifend donec pretium vulputate sapien nec sagittis. Orci a scelerisque purus semper eget duis at tellus at.",
      • "status": "active",
      • "editable": true,
      • "recruitable": true,
      • "minimum_age": 16,
      • "pdf_url": "http://example.com",
      • "risk_assessment_url": "http://example.com",
      • "minimum_address_history": "2",
      • "receives_team_notifications": true,
      • "family": {
        • "id": 21421,
        • "name": "Volunteer"
        },
      • "recruitment_category": {
        • "id": 12412,
        • "name": "Full",
        • "stages": [
          • {
            • "id": 21412,
            • "name": "Application",
            • "display_name": "Applied",
            • "actions": [
              • {
                • "id": 421421,
                • "name": "string",
                • "action_stage_id": 0,
                • "settings": { }
                }
              ]
            }
          ]
        },
      • "images": [],
      • "tasks": [
        • {
          • "id": 532523,
          • "task": "A pellentesque sit amet porttitor eget."
          }
        ],
      • "skills": [
        • {
          • "id": 543,
          • "skill": "Senectus et netus et malesuada fames ac turpis egestas maecenas."
          }
        ],
      • "benefits": [
        • {
          • "id": 5435,
          • "benefit": "Accumsan lacus vel facilisis volutpat est velit egestas dui id."
          }
        ],
      • "base": {
        • "id": 64,
        • "name": "Community",
        • "icon": "fa fa-users",
        • "order_id": 1
        }
      },
    • "subLocations": [
      • {
        • "id": 324,
        • "description": "string",
        • "location": {
          • "id": 54654,
          • "name": "11 Downing St",
          • "status": "active",
          • "company_name": "string",
          • "street": "11 Downing St",
          • "street_second": "string",
          • "street_third": "string",
          • "city": "London",
          • "county": "Westminster",
          • "postcode": "SW1A 2AB",
          • "country": "United Kingdom",
          • "address": "11 Downing St, Westminster, London SW1A 2AB",
          • "lat": 51.503274,
          • "long": -0.127822
          },
        • "timeslots": [
          • {
            • "id": 432423,
            • "date": "2021-02-04",
            • "start_time": "13:00",
            • "end_time": "18:00",
            • "min_capacity": "2",
            • "places": "25",
            • "max_applications": 50,
            • "users": [
              • {
                • "status": {
                  • "id": "1",
                  • "name": "Active",
                  • "contactable": true
                  },
                • "start_date": "2019-08-24",
                • "primary_phone": "string",
                • "id": 46485,
                • "display_name": "John Smith",
                • "title": "Mr",
                • "profile_photo_url": "http://example.com",
                • "can_manage": true,
                • "role_name": "Volunteer",
                • "team_name": "Kent"
                }
              ]
            }
          ]
        }
      ],
    • "image": {
      • "meta": {
        • "pagination": {
          • "total": "string",
          • "count": "string",
          • "per_page": "string",
          • "current_page": "string",
          • "total_pages": "string",
          • "links": {
            • "next": "string",
            • "previous": "string"
            }
          }
        }
      }
    }
}

Opportunity Sublocations

Sublocations listing

Retrieve a paginated response of sublocations for a specific opportunity

Authorizations:
JWT
path Parameters
id
required
string

Opportunity ID

Responses

Response Schema: application/json
Array of objects (OpportunitySubLocation)
object

Response samples

Content type
application/json
{
  • "data": [
    • {
      • "id": 324,
      • "description": "string",
      • "location": {
        • "id": 54654,
        • "name": "11 Downing St",
        • "status": "active",
        • "company_name": "string",
        • "street": "11 Downing St",
        • "street_second": "string",
        • "street_third": "string",
        • "city": "London",
        • "county": "Westminster",
        • "postcode": "SW1A 2AB",
        • "country": "United Kingdom",
        • "address": "11 Downing St, Westminster, London SW1A 2AB",
        • "lat": 51.503274,
        • "long": -0.127822
        },
      • "timeslots": [
        • {
          • "id": 432423,
          • "date": "2021-02-04",
          • "start_time": "13:00",
          • "end_time": "18:00",
          • "min_capacity": "2",
          • "places": "25",
          • "max_applications": 50,
          • "users": [
            • {
              • "status": {
                • "id": "1",
                • "name": "Active",
                • "contactable": true
                },
              • "start_date": "2019-08-24",
              • "primary_phone": "string",
              • "id": 46485,
              • "display_name": "John Smith",
              • "title": "Mr",
              • "profile_photo_url": "http://example.com",
              • "can_manage": true,
              • "role_name": "Volunteer",
              • "team_name": "Kent"
              }
            ]
          }
        ]
      }
    ],
  • "meta": {
    • "pagination": {
      • "total": "string",
      • "count": "string",
      • "per_page": "string",
      • "current_page": "string",
      • "total_pages": "string",
      • "links": {
        • "next": "string",
        • "previous": "string"
        }
      }
    }
}

Create a new sublocation

Create a new sub location for a specific opportunity.

Only "One-off" opportunities can have more than one sub location.

Authorizations:
JWT
path Parameters
id
required
string

Opportunity ID

Request Body schema: application/json
required
object
description
string

Responses

Request samples

Content type
application/json
{
  • "location": {
    • "id": 0
    },
  • "description": "string"
}

Response samples

Content type
application/json
{
  • "message": "400 Bad request",
  • "status_code": "400"
}

Show a sublocation

Retrieve information for a specific opportunity sublocation

Authorizations:
JWT
path Parameters
id
required
string

Opportunity id

subLocationId
required
string

Sublocation ID

Responses

Response Schema: application/json
object (OpportunitySubLocation)

Response samples

Content type
application/json
{
  • "data": {
    • "id": 324,
    • "description": "string",
    • "location": {
      • "id": 54654,
      • "name": "11 Downing St",
      • "status": "active",
      • "company_name": "string",
      • "street": "11 Downing St",
      • "street_second": "string",
      • "street_third": "string",
      • "city": "London",
      • "county": "Westminster",
      • "postcode": "SW1A 2AB",
      • "country": "United Kingdom",
      • "address": "11 Downing St, Westminster, London SW1A 2AB",
      • "lat": 51.503274,
      • "long": -0.127822
      },
    • "timeslots": [
      • {
        • "id": 432423,
        • "date": "2021-02-04",
        • "start_time": "13:00",
        • "end_time": "18:00",
        • "min_capacity": "2",
        • "places": "25",
        • "max_applications": 50,
        • "users": [
          • {
            • "status": {
              • "id": "1",
              • "name": "Active",
              • "contactable": true
              },
            • "start_date": "2019-08-24",
            • "primary_phone": "string",
            • "id": 46485,
            • "display_name": "John Smith",
            • "title": "Mr",
            • "profile_photo_url": "http://example.com",
            • "can_manage": true,
            • "role_name": "Volunteer",
            • "team_name": "Kent"
            }
          ]
        }
      ]
    }
}

Update a sublocation

Update an existing opportunity sublocation

Authorizations:
JWT
path Parameters
id
required
string

Opportunity id

subLocationId
required
string

Sublocation ID

Request Body schema: application/json
required
object
description
string

Responses

Response Schema: application/json
object (OpportunitySubLocation)

Request samples

Content type
application/json
{
  • "location": {
    • "id": 0
    },
  • "description": "string"
}

Response samples

Content type
application/json
{
  • "data": {
    • "id": 324,
    • "description": "string",
    • "location": {
      • "id": 54654,
      • "name": "11 Downing St",
      • "status": "active",
      • "company_name": "string",
      • "street": "11 Downing St",
      • "street_second": "string",
      • "street_third": "string",
      • "city": "London",
      • "county": "Westminster",
      • "postcode": "SW1A 2AB",
      • "country": "United Kingdom",
      • "address": "11 Downing St, Westminster, London SW1A 2AB",
      • "lat": 51.503274,
      • "long": -0.127822
      },
    • "timeslots": [
      • {
        • "id": 432423,
        • "date": "2021-02-04",
        • "start_time": "13:00",
        • "end_time": "18:00",
        • "min_capacity": "2",
        • "places": "25",
        • "max_applications": 50,
        • "users": [
          • {
            • "status": {
              • "id": "1",
              • "name": "Active",
              • "contactable": true
              },
            • "start_date": "2019-08-24",
            • "primary_phone": "string",
            • "id": 46485,
            • "display_name": "John Smith",
            • "title": "Mr",
            • "profile_photo_url": "http://example.com",
            • "can_manage": true,
            • "role_name": "Volunteer",
            • "team_name": "Kent"
            }
          ]
        }
      ]
    }
}

Delete a sublocation

Delete an existing opportunity sublocation.

You cannot delete the last opportunity sublocation.

Authorizations:
JWT
path Parameters
id
required
string

Opportunity id

subLocationId
required
string

Sublocation ID

Responses

Response samples

Content type
application/json
{
  • "message": "400 Bad request",
  • "status_code": "400"
}

Opportunity Timeslots

Timeslot listing

Retrieve a paginated response of timeslots for a specific opportunity sublocation.

Authorizations:
JWT
path Parameters
id
required
string

Opportunity ID

subLocationId
required
string

Sublocation ID

Responses

Response Schema: application/json
Array of objects (OpportunitySublocationTimeslot)
object

Response samples

Content type
application/json
{
  • "data": [
    • {
      • "id": 432423,
      • "date": "2021-02-04",
      • "start_time": "13:00",
      • "end_time": "18:00",
      • "min_capacity": "2",
      • "places": "25",
      • "max_applications": 50,
      • "users": [
        • {
          • "status": {
            • "id": "1",
            • "name": "Active",
            • "contactable": true
            },
          • "start_date": "2019-08-24",
          • "primary_phone": "string",
          • "id": 46485,
          • "display_name": "John Smith",
          • "title": "Mr",
          • "profile_photo_url": "http://example.com",
          • "can_manage": true,
          • "role_name": "Volunteer",
          • "team_name": "Kent"
          }
        ]
      }
    ],
  • "meta": {
    • "pagination": {
      • "total": "string",
      • "count": "string",
      • "per_page": "string",
      • "current_page": "string",
      • "total_pages": "string",
      • "links": {
        • "next": "string",
        • "previous": "string"
        }
      }
    }
}

Create a new timeslot

Create a new timeslot for a specific opportunity sublocation.

Only "One-off" opportunities can have more than one timeslot.

path Parameters
id
required
string

Opportunity ID

subLocationId
required
string

Sublocation ID

Request Body schema: application/json
id
integer

The unique ID of the OpportunitySublocationTimeslot record

date
required
string <date>

Timeslot date

start_time
string <time>

Timeslot start time

end_time
string <time>

Timeslot end time

min_capacity
integer

Timeslot minimum capacity

max_applications
integer

Timeslot maximum applications

Responses

Response Schema: application/json
object (OpportunitySublocationTimeslot)

Request samples

Content type
application/json
{
  • "id": 432423,
  • "date": "2021-02-04",
  • "start_time": "13:00",
  • "end_time": "18:00",
  • "min_capacity": "2",
  • "max_applications": 50
}

Response samples

Content type
application/json
{
  • "data": {
    • "id": 432423,
    • "date": "2021-02-04",
    • "start_time": "13:00",
    • "end_time": "18:00",
    • "min_capacity": "2",
    • "places": "25",
    • "max_applications": 50,
    • "users": [
      • {
        • "status": {
          • "id": "1",
          • "name": "Active",
          • "contactable": true
          },
        • "start_date": "2019-08-24",
        • "primary_phone": "string",
        • "id": 46485,
        • "display_name": "John Smith",
        • "title": "Mr",
        • "profile_photo_url": "http://example.com",
        • "can_manage": true,
        • "role_name": "Volunteer",
        • "team_name": "Kent"
        }
      ]
    }
}

Show a timeslot

Retrieve information for a specific opportunity sublocation timeslot.

Authorizations:
JWT
path Parameters
id
required
string

Opportunity ID

subLocationId
required
string

Sublocation ID

timeslotId
required
string

Timeslot ID

Responses

Response Schema: application/json
object (OpportunitySublocationTimeslot)

Response samples

Content type
application/json
{
  • "data": {
    • "id": 432423,
    • "date": "2021-02-04",
    • "start_time": "13:00",
    • "end_time": "18:00",
    • "min_capacity": "2",
    • "places": "25",
    • "max_applications": 50,
    • "users": [
      • {
        • "status": {
          • "id": "1",
          • "name": "Active",
          • "contactable": true
          },
        • "start_date": "2019-08-24",
        • "primary_phone": "string",
        • "id": 46485,
        • "display_name": "John Smith",
        • "title": "Mr",
        • "profile_photo_url": "http://example.com",
        • "can_manage": true,
        • "role_name": "Volunteer",
        • "team_name": "Kent"
        }
      ]
    }
}

Update a timeslot

Update a specific opportunity sublocation timeslot.

Authorizations:
JWT
path Parameters
id
required
string

Opportunity ID

subLocationId
required
string

Sublocation ID

timeslotId
required
string

Timeslot ID

Request Body schema: application/json
id
integer

The unique ID of the OpportunitySublocationTimeslot record

date
required
string <date>

Timeslot date

start_time
string <time>

Timeslot start time

end_time
string <time>

Timeslot end time

min_capacity
integer

Timeslot minimum capacity

max_applications
integer

Timeslot maximum applications

Responses

Response Schema: application/json
object (OpportunitySublocationTimeslot)

Request samples

Content type
application/json
{
  • "id": 432423,
  • "date": "2021-02-04",
  • "start_time": "13:00",
  • "end_time": "18:00",
  • "min_capacity": "2",
  • "max_applications": 50
}

Response samples

Content type
application/json
{
  • "data": {
    • "id": 432423,
    • "date": "2021-02-04",
    • "start_time": "13:00",
    • "end_time": "18:00",
    • "min_capacity": "2",
    • "places": "25",
    • "max_applications": 50,
    • "users": [
      • {
        • "status": {
          • "id": "1",
          • "name": "Active",
          • "contactable": true
          },
        • "start_date": "2019-08-24",
        • "primary_phone": "string",
        • "id": 46485,
        • "display_name": "John Smith",
        • "title": "Mr",
        • "profile_photo_url": "http://example.com",
        • "can_manage": true,
        • "role_name": "Volunteer",
        • "team_name": "Kent"
        }
      ]
    }
}

Delete a timeslot

Delete a specific opportunity sublocation timeslot.

You cannot delete a timeslot if it already has associated users or if it is the last timeslot for the sublocation.

Authorizations:
JWT
path Parameters
id
required
string

Opportunity ID

subLocationId
required
string

Sublocation ID

timeslotId
required
string

Timeslot ID

Responses

Response samples

Content type
application/json
{
  • "message": "400 Bad request",
  • "status_code": "400"
}

Timeslot users listing

Retrieve an array of users associated to a specific opportunity sublocation timeslot.

Authorizations:
JWT
path Parameters
id
required
string

Opportunity ID

subLocationId
required
string

Sublocation ID

timeslotId
required
string

Timeslot ID

Responses

Response Schema: application/json
Array of objects (OpportunitySublocationTimeslotUser)

Response samples

Content type
application/json
{
  • "data": [
    • {
      • "status": {
        • "id": "1",
        • "name": "Active",
        • "contactable": true
        },
      • "start_date": "2019-08-24",
      • "primary_phone": "string",
      • "id": 46485,
      • "display_name": "John Smith",
      • "title": "Mr",
      • "profile_photo_url": "http://example.com",
      • "can_manage": true,
      • "role_name": "Volunteer",
      • "team_name": "Kent"
      }
    ]
}

Associate a user with a timeslot

Associate a user with an existing opportunity sublocation timeslot.

Authorizations:
JWT
path Parameters
id
required
string

Opportunity ID

subLocationId
required
string

Sublocation ID

timeslotId
required
string

Timeslot ID

Request Body schema: application/json
id
integer

User ID

status
integer
Enum: 1 2 3 4

Status ID

start_date
string <date>

Responses

Response Schema: application/json
object (OpportunitySublocationTimeslotUser)

Request samples

Content type
application/json
{
  • "id": 231,
  • "status": 2,
  • "start_date": "2019-08-24"
}

Response samples

Content type
application/json
{
  • "data": {
    • "status": {
      • "id": "1",
      • "name": "Active",
      • "contactable": true
      },
    • "start_date": "2019-08-24",
    • "primary_phone": "string",
    • "id": 46485,
    • "display_name": "John Smith",
    • "title": "Mr",
    • "profile_photo_url": "http://example.com",
    • "can_manage": true,
    • "role_name": "Volunteer",
    • "team_name": "Kent"
    }
}

Show a timeslot user

Retrieve information for a specific opportunity sublocation timeslot user.

Authorizations:
JWT
path Parameters
id
required
string

Opportunity ID

subLocationId
required
string

Sublocation ID

timeslotId
required
string

Timeslot ID

userId
required
string

User ID

Responses

Response Schema: application/json
object (OpportunitySublocationTimeslotUser)

Response samples

Content type
application/json
{
  • "data": {
    • "status": {
      • "id": "1",
      • "name": "Active",
      • "contactable": true
      },
    • "start_date": "2019-08-24",
    • "primary_phone": "string",
    • "id": 46485,
    • "display_name": "John Smith",
    • "title": "Mr",
    • "profile_photo_url": "http://example.com",
    • "can_manage": true,
    • "role_name": "Volunteer",
    • "team_name": "Kent"
    }
}

Update a timeslot user

Update a specific opportunity timeslot user

Authorizations:
JWT
path Parameters
id
required
string

Opportunity ID

subLocationId
required
string

Sublocation ID

timeslotId
required
string

Timeslot ID

userId
required
string

User ID

Request Body schema: application/json
status
integer
Enum: 1 2 3 4

Status ID

start_date
string <date>

Responses

Response Schema: application/json
object (OpportunitySublocationTimeslotUser)

Request samples

Content type
application/json
{
  • "status": 2,
  • "start_date": "2019-08-24"
}

Response samples

Content type
application/json
{
  • "data": {
    • "status": {
      • "id": "1",
      • "name": "Active",
      • "contactable": true
      },
    • "start_date": "2019-08-24",
    • "primary_phone": "string",
    • "id": 46485,
    • "display_name": "John Smith",
    • "title": "Mr",
    • "profile_photo_url": "http://example.com",
    • "can_manage": true,
    • "role_name": "Volunteer",
    • "team_name": "Kent"
    }
}

Delete a timeslot user

Delete a specific opportunity timeslot user.

Authorizations:
JWT
path Parameters
id
required
string

Opportunity ID

subLocationId
required
string

Sublocation ID

timeslotId
required
string

Timeslot ID

userId
required
string

User ID

Responses

Response samples

Content type
application/json
{
  • "message": "Unauthorized action",
  • "status_code": "403"
}