Greenwire Public API
Greenpeace Greenwire allows you connect with other volunteers, activists and groups working on environmental campaigns all across the world!
COMMUNITYNO AUTH0 INSTALLS
OpenAPI Specificationv3.0
{
"swagger": "2.0",
"schemes": [
"https"
],
"host": "greenwire.greenpeace.org",
"basePath": "/api/public",
"info": {
"contact": {
"name": "Greenpeace International contact",
"url": "http://www.greenpeace.org/international/en/about/contactus/",
"x-twitter": "Greenpeace"
},
"description": "Greenpeace Greenwire allows you connect with other volunteers, activists and groups working on environmental campaigns all across the world!",
"license": {
"name": "MIT",
"url": "http://opensource.org/licenses/MIT"
},
"termsOfService": "http://www.greenpeace.org/international/en/Help/copyright2/",
"title": "Greenwire Public API",
"version": "1.0.0",
"x-apisguru-categories": [
"collaboration"
],
"x-logo": {
"url": "https://api.apis.guru/v2/cache/logo/https_twitter.com_Greenpeace_profile_image.png"
},
"x-origin": [
{
"format": "swagger",
"url": "https://raw.githubusercontent.com/greenpeace/ggw_api_test/master/swagger.yaml",
"version": "2.0"
}
],
"x-providerName": "greenpeace.org"
},
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"paths": {
"/events": {
"get": {
"description": "Return the upcoming events (e.g. start date >= today). Gets an array of `Event` object. Mandatory query param of **domain** determines the site / country the event belongs to.",
"parameters": [
{
"description": "the site the groups belongs to, example: netherlands",
"in": "query",
"name": "domain",
"required": true,
"type": "string"
},
{
"description": "the number of desired records",
"in": "query",
"name": "limit",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "Successful response",
"schema": {
"properties": {
"body": {
"items": {
"$ref": "#/definitions/Event"
},
"type": "array"
},
"header": {
"$ref": "#/definitions/HeaderSuccess"
}
}
}
}
}
}
},
"/events/{UUID}": {
"get": {
"description": "Get one `Event` object by specifying its UUID in the url path.",
"parameters": [
{
"in": "path",
"name": "UUID",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "Successful response",
"schema": {
"properties": {
"data": {
"$ref": "#/definitions/Event"
},
"header": {
"$ref": "#/definitions/HeaderSuccess"
}
}
}
},
"400": {
"description": "Not found",
"schema": {
"properties": {
"body": {
"type": "object"
},
"header": {
"$ref": "#/definitions/HeaderError"
}
}
}
}
}
}
},
"/groups": {
"get": {
"description": "Gets an array of `Group` object. Mandatory query param of **domain** determines the site / country the group belongs to.",
"parameters": [
{
"description": "the site the groups belongs to, example: netherlands",
"in": "query",
"name": "domain",
"required": true,
"type": "string"
},
{
"description": "the number of desired records",
"in": "query",
"name": "limit",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "Successful response",
"schema": {
"properties": {
"body": {
"items": {
"$ref": "#/definitions/Group"
},
"type": "array"
},
"header": {
"$ref": "#/definitions/HeaderSuccess"
}
}
}
}
}
}
},
"/groups/{UUID}": {
"get": {
"description": "Get one `Group` object by specifying its UUID in the url path.",
"parameters": [
{
"in": "path",
"name": "UUID",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "Successful response",
"schema": {
"properties": {
"data": {
"$ref": "#/definitions/Group"
},
"header": {
"$ref": "#/definitions/HeaderSuccess"
}
}
}
},
"400": {
"description": "Not found",
"schema": {
"properties": {
"body": {
"type": "object"
},
"header": {
"$ref": "#/definitions/HeaderError"
}
}
}
}
}
}
},
"/volunteers": {
"get": {
"description": "Gets an array of `Volunteer` object. Mandatory query param of **domain** determines the site / country the volunteers are from.",
"parameters": [
{
"description": "the site the users are registered on, example: netherlands",
"in": "query",
"name": "domain",
"required": true,
"type": "string"
},
{
"description": "the number of desired records. Default is 5.",
"in": "query",
"name": "limit",
"required": false,
"type": "string"
},
{
"description": "1 or 0. filter on people that have the default avatar or not.",
"in": "query",
"name": "must_have_default_avatar",
"type": "boolean"
}
],
"responses": {
"200": {
"description": "Successful response",
"schema": {
"properties": {
"body": {
"items": {
"$ref": "#/definitions/Volunteer"
},
"type": "array"
},
"header": {
"$ref": "#/definitions/HeaderSuccess"
}
}
}
}
}
}
},
"/volunteers/{UUID}": {
"get": {
"description": "Get one specific `Volunteer` object by specifying its UUID in the url path.",
"parameters": [
{
"in": "path",
"name": "UUID",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "Successful response",
"schema": {
"properties": {
"body": {
"$ref": "#/definitions/Volunteer"
},
"header": {
"$ref": "#/definitions/HeaderSuccess"
}
}
}
},
"400": {
"description": "Not found",
"schema": {
"properties": {
"body": {
"type": "object"
},
"header": {
"$ref": "#/definitions/HeaderError"
}
}
}
}
}
}
}
},
"definitions": {
"Coordinates": {
"properties": {
"latitude": {
"description": "Signed decimal format, example: 52.1234",
"type": "string"
},
"longitude": {
"description": "Signed decimal format, example -77.022223",
"type": "string"
}
},
"type": "object"
},
"DateTime": {
"description": "The date in YYYY-MM-DD HH:MM:SS format, example: 2015-12-31 23:59:59",
"type": "string"
},
"Event": {
"properties": {
"created": {
"$ref": "#/definitions/DateTime"
},
"description": {
"$ref": "#/definitions/HTML"
},
"end_date": {
"$ref": "#/definitions/DateTime"
},
"groups": {
"items": {
"$ref": "#/definitions/GroupLite"
},
"type": "array"
},
"location": {
"$ref": "#/definitions/Location"
},
"modified": {
"$ref": "#/definitions/DateTime"
},
"name": {
"type": "string"
},
"organizers": {
"items": {
"$ref": "#/definitions/VolunteerLite"
},
"type": "array"
},
"picture": {
"$ref": "#/definitions/URL"
},
"serial": {
"$ref": "#/definitions/Serial"
},
"start_date": {
"$ref": "#/definitions/DateTime"
},
"uuid": {
"$ref": "#/definitions/UUID"
}
},
"type": "object"
},
"Group": {
"properties": {
"created": {
"$ref": "#/definitions/DateTime"
},
"description": {
"$ref": "#/definitions/HTML"
},
"group_type": {
"$ref": "#/definitions/GroupType"
},
"location": {
"$ref": "#/definitions/Location"
},
"mission": {
"type": "string"
},
"modified": {
"$ref": "#/definitions/DateTime"
},
"name": {
"type": "string"
},
"picture": {
"$ref": "#/definitions/URL"
},
"serial": {
"$ref": "#/definitions/Serial"
},
"uuid": {
"$ref": "#/definitions/UUID"
}
},
"type": "object"
},
"GroupLite": {
"properties": {
"name": {
"type": "string"
},
"serial": {
"$ref": "#/definitions/Serial"
},
"uuid": {
"$ref": "#/definitions/UUID"
}
},
"type": "object"
},
"GroupType": {
"enum": [
"Country group",
"Campaign Project group",
"Local group",
"Discussion group",
"Interest group",
"Skills-based group"
],
"type": "string"
},
"HTML": {
"description": "A string containing sanitized HTML code",
"type": "string"
},
"HTTP_Code": {
"description": "https://en.wikipedia.org/wiki/List_of_HTTP_status_codes",
"type": "string"
},
"HTTP_Status": {
"description": "https://en.wikipedia.org/wiki/List_of_HTTP_status_codes",
"type": "integer"
},
"HeaderError": {
"properties": {
"code": {
"$ref": "#/definitions/HTTP_Code"
},
"error": {
"description": "the error message",
"type": "string"
},
"id": {
"description": "transaction nonce",
"type": "integer"
},
"pagination": {
"type": "object"
},
"resources": {
"$ref": "#/definitions/ResourceType"
},
"status": {
"$ref": "#/definitions/HTTP_Status"
}
},
"type": "object"
},
"HeaderSuccess": {
"properties": {
"code": {
"$ref": "#/definitions/HTTP_Code"
},
"error": {
"type": "null"
},
"id": {
"description": "transaction nonce",
"type": "integer"
},
"pagination": {
"$ref": "#/definitions/Pagination"
},
"resources": {
"$ref": "#/definitions/ResourceType"
},
"status": {
"$ref": "#/definitions/HTTP_Status"
}
},
"type": "object"
},
"ISO_3166-1_alpha-2": {
"description": "Country code see. https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2",
"type": "string"
},
"Location": {
"properties": {
"city": {
"type": "string"
},
"coordinates": {
"$ref": "#/definitions/Coordinates"
},
"country": {
"type": "string"
},
"postcode": {
"type": "string"
},
"state": {
"type": "string"
},
"streetname": {
"type": "string"
}
},
"type": "object"
},
"LocationSimple": {
"properties": {
"country": {
"$ref": "#/definitions/ISO_3166-1_alpha-2"
}
},
"type": "object"
},
"Pagination": {
"properties": {
"limit": {
"description": "the nubmer of items per page",
"type": "integer"
},
"page": {
"description": "the current page",
"type": "integer"
},
"total": {
"description": "the total number of pages",
"type": "integer"
}
},
"type": "object"
},
"ResourceType": {
"description": "The name of the requested object/model/resource. Plural if a collection.",
"enum": [
"group",
"groups",
"event",
"events",
"volunteer",
"volunteers"
],
"type": "string"
},
"Serial": {
"description": "The primary key in Drupal, e.g the entity/node id",
"type": "string"
},
"URL": {
"description": "A resource location, example: https://greenwire.greenpeace.org",
"type": "string"
},
"UUID": {
"description": "Universally unique identifier in canonical format, example: de305d54-75b4-431b-adb2-eb6b9e546014",
"type": "string"
},
"Volunteer": {
"properties": {
"avatar": {
"$ref": "#/definitions/URL"
},
"locations": {
"items": {
"$ref": "#/definitions/LocationSimple"
},
"type": "array"
},
"uuid": {
"$ref": "#/definitions/UUID"
}
},
"type": "object"
},
"VolunteerLite": {
"properties": {
"serial": {
"$ref": "#/definitions/Serial"
},
"uuid": {
"$ref": "#/definitions/UUID"
}
},
"type": "object"
}
}
}