Introduction
Documentation for the HackGreenville API. This API provides access to data stored in the HackGreenville database, such as events, organizations and more.
This documentation aims to provide all the information you need to work with our API.
Authenticating requests
This API is not authenticated.
Endpoints
Events API v0
This API provides access to event data stored in the HackGreenville database.
Please see the Event API docs for more information about the event API.
Example request:
curl --request GET \
--get "https://hackgreenville.com/api/v0/events?start_date=2026-01-01&end_date=2100-12-31" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://hackgreenville.com/api/v0/events"
);
const params = {
"start_date": "2026-01-01",
"end_date": "2100-12-31",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());import requests
import json
url = 'https://hackgreenville.com/api/v0/events'
params = {
'start_date': '2026-01-01',
'end_date': '2100-12-31',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()Example response (200):
[
{
"event_name": "Eius et animi quos velit et.",
"group_name": "Mrs. Justina Gaylord tech group!!!",
"group_url": "quis",
"url": "https://kunde.net/est-quaerat-enim-accusantium-alias-magnam.html",
"time": "2025-01-01T17:00:00.000000Z",
"tags": "",
"status": "past",
"rsvp_count": 28,
"description": "Aut ex quo iure eos explicabo accusamus. Et qui ipsa itaque autem mollitia.",
"uuid": "3f5d74c8-7495-3f45-bd67-0e0ddb6401b8",
"data_as_of": "2026-01-01T12:00:00.000000Z",
"service_id": "3",
"service": "eventbrite",
"venue": {
"name": "placeat rerum ad in quo",
"address": "39134 Heidenreich Shoal Apt. 942\nReubenland, WY 88137-3873",
"city": "Ladariushaven",
"state": "MT",
"zip": "30525-7075",
"country": "EH",
"lat": "24.605096",
"lon": "153.784749"
},
"created_at": "2025-01-01T17:00:00.000000Z",
"is_paid": null
}
]
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Organizations API v0
This API provides access to organization data stored in the HackGreenville database.
Please see the Organization API docs for more information about the organization API.
Example request:
curl --request GET \
--get "https://hackgreenville.com/api/v0/orgs" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://hackgreenville.com/api/v0/orgs"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());import requests
import json
url = 'https://hackgreenville.com/api/v0/orgs'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()Example response (200):
[
{
"title": "sunt",
"path": "https://gaylord.com/modi-deserunt-aut-ab-provident-perspiciatis.html",
"changed": "2025-01-01T17:00:00.000000Z",
"field_city": "Lyricberg",
"field_event_service": null,
"field_events_api_key": null,
"field_focus_area": "adipisci",
"field_homepage": "fugiat",
"field_event_calendar_homepage": "http://hauck.com/",
"field_primary_contact_person": "quidem",
"field_org_status": "active",
"field_organization_type": "nostrum",
"field_year_established": 2025,
"field_org_tags": "",
"uuid": 123
}
]
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Events API v1
This API provides access to event data stored in the HackGreenville database.
- Please see the Event API docs for more information about the event API.
Example request:
curl --request GET \
--get "https://hackgreenville.com/api/v1/events?per_page=50&page=1&start_date=2026-01-01&end_date=2100-12-31&tags[]=16&sort_by=event_name&sort_direction=asc" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://hackgreenville.com/api/v1/events"
);
const params = {
"per_page": "50",
"page": "1",
"start_date": "2026-01-01",
"end_date": "2100-12-31",
"tags[0]": "16",
"sort_by": "event_name",
"sort_direction": "asc",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());import requests
import json
url = 'https://hackgreenville.com/api/v1/events'
params = {
'per_page': '50',
'page': '1',
'start_date': '2026-01-01',
'end_date': '2100-12-31',
'tags[0]': '16',
'sort_by': 'event_name',
'sort_direction': 'asc',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()Example response (200):
{
"data": [
{
"id": "3f5d74c8-7495-3f45-bd67-0e0ddb6401b8",
"name": "Eius et animi quos velit et.",
"description": "Aut ex quo iure eos explicabo accusamus. Et qui ipsa itaque autem mollitia.",
"url": "https://kunde.net/est-quaerat-enim-accusantium-alias-magnam.html",
"starts_at": "2025-01-01T17:00:00.000000Z",
"ends_at": "2025-01-01T19:00:00.000000Z",
"rsvp_count": 28,
"status": "past",
"is_paid": null,
"organization": {
"id": 123,
"name": "Mrs. Justina Gaylord tech group!!!",
"url": "quis",
"tags": []
},
"venue": {
"name": "placeat rerum ad in quo",
"address": "39134 Heidenreich Shoal Apt. 942\nReubenland, WY 88137-3873",
"city": "Ladariushaven",
"state": {
"code": "MT",
"name": "MT"
},
"zipcode": "30525-7075",
"country": "EH",
"location": {
"latitude": "24.605096",
"longitude": "153.784749"
}
},
"service": {
"name": "eventbrite",
"id": "3"
},
"created_at": "2025-01-01T17:00:00.000000Z",
"updated_at": "2025-01-01T17:00:00.000000Z"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Organizations API v1
This API provides access to organization data stored in the HackGreenville database.
- Please see the Organization API docs for more information about the organization API.
Example request:
curl --request GET \
--get "https://hackgreenville.com/api/v1/organizations?per_page=50&page=1&established_from=&established_to=&sort_by=title&sort_direction=asc" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://hackgreenville.com/api/v1/organizations"
);
const params = {
"per_page": "50",
"page": "1",
"established_from": "",
"established_to": "",
"sort_by": "title",
"sort_direction": "asc",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());import requests
import json
url = 'https://hackgreenville.com/api/v1/organizations'
params = {
'per_page': '50',
'page': '1',
'established_from': '',
'established_to': '',
'sort_by': 'title',
'sort_direction': 'asc',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()Example response (200):
{
"data": [
{
"id": 123,
"title": "sunt",
"path": "https://gaylord.com/modi-deserunt-aut-ab-provident-perspiciatis.html",
"city": "Lyricberg",
"service": null,
"service_api_key": null,
"focus_area": "adipisci",
"website_url": "fugiat",
"event_calendar_url": "http://hauck.com/",
"primary_contact": "quidem",
"status": "active",
"organization_type": "nostrum",
"established_year": 2025,
"tags": [],
"created_at": "2025-01-01T17:00:00.000000Z",
"updated_at": "2025-01-01T17:00:00.000000Z"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.