Collections
Retrieve a collection
GET
/
v1
/
collections
/
{id}
Retrieve a collection
curl --request GET \
--url https://api.ongoody.com/v1/collections/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.ongoody.com/v1/collections/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.ongoody.com/v1/collections/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.ongoody.com/v1/collections/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.ongoody.com/v1/collections/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.ongoody.com/v1/collections/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.ongoody.com/v1/collections/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "7f50f2ba-e070-4e33-a107-3ddfe4c771dc",
"workspace_id": "633e3b64-1ab4-4439-b44a-8c3a069cfd76",
"title": "Office Favorites",
"is_published": true,
"published_price": null,
"product": null,
"published_version": {
"id": "3b6af2d7-74e3-4201-8dfc-88cfacbdde91",
"title": "Office Favorites",
"subtitle": "Curated treats for the whole team",
"multiple_select_mode": "disabled",
"multiple_select_count": null,
"multiple_select_price": null,
"international_shipping_tier": "standard",
"international_gift_cards_enabled": false,
"display_interface": "single_page",
"header_image": null,
"collection_categories": [
{
"id": "ed3c56cd-d90c-4815-8caf-fd4c79b7fd46",
"name": "Treats & Sips",
"is_featured": true,
"position": 1,
"collection_products": [
{
"id": "a7fe8bd9-3023-4037-8cc4-60e141f00e62",
"product": {
"id": "e2b9f659-e01e-430b-aa16-14a22158cd36",
"name": "Craft Coffee Kit",
"brand": {
"id": "7141fe00-a619-41c5-ac6a-b54342412f6d",
"name": "Cookie Company",
"logo_image": null,
"shipping_price": 1000,
"free_shipping_minimum": null,
"brand_values": []
},
"subtitle": null,
"subtitle_short": null,
"recipient_description": "",
"variants_label": null,
"variants_num_selectable": null,
"variants": [],
"variant_groups": [],
"images": [],
"price": 1000,
"price_is_variable": false,
"restricted_states": [],
"attributes": [],
"updated_at": "2026-06-03T12:24:04Z",
"status": "active"
}
},
{
"id": "3ceb6404-75ed-4be7-a022-e4afdf078749",
"product": {
"id": "bae8372a-4325-4c5c-b58d-57e8f0a891ad",
"name": "Artisan Snack Box",
"brand": {
"id": "7141fe00-a619-41c5-ac6a-b54342412f6d",
"name": "Cookie Company",
"logo_image": null,
"shipping_price": 1000,
"free_shipping_minimum": null,
"brand_values": []
},
"subtitle": null,
"subtitle_short": null,
"recipient_description": "",
"variants_label": null,
"variants_num_selectable": null,
"variants": [],
"variant_groups": [],
"images": [],
"price": 1000,
"price_is_variable": false,
"restricted_states": [],
"attributes": [],
"updated_at": "2026-06-03T12:24:04Z",
"status": "active"
}
}
]
}
]
}
}{
"error": "Collection not found"
}Retrieve a collection’s details. Automation API only.
To access the products in a collection, traverse:
collection > published_version > collection_categories > collection_products > product.
Authorizations
Your Goody API key.
Path Parameters
Collection ID
Response
Collection retrieved successfully
A collection is a curated group of products that recipients can select from.
Workspace that owns this collection.
Indicates whether the collection currently has a published version.
Price for the published collection in cents, including shipping.
The product that represents the collection when published. Null for unpublished collections. To send this collection, send the product ID in the cart
Show child attributes
Show child attributes
Details about the published version of this collection. Null for unpublished collections.
Show child attributes
Show child attributes
⌘I
Retrieve a collection
curl --request GET \
--url https://api.ongoody.com/v1/collections/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.ongoody.com/v1/collections/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.ongoody.com/v1/collections/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.ongoody.com/v1/collections/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.ongoody.com/v1/collections/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.ongoody.com/v1/collections/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.ongoody.com/v1/collections/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "7f50f2ba-e070-4e33-a107-3ddfe4c771dc",
"workspace_id": "633e3b64-1ab4-4439-b44a-8c3a069cfd76",
"title": "Office Favorites",
"is_published": true,
"published_price": null,
"product": null,
"published_version": {
"id": "3b6af2d7-74e3-4201-8dfc-88cfacbdde91",
"title": "Office Favorites",
"subtitle": "Curated treats for the whole team",
"multiple_select_mode": "disabled",
"multiple_select_count": null,
"multiple_select_price": null,
"international_shipping_tier": "standard",
"international_gift_cards_enabled": false,
"display_interface": "single_page",
"header_image": null,
"collection_categories": [
{
"id": "ed3c56cd-d90c-4815-8caf-fd4c79b7fd46",
"name": "Treats & Sips",
"is_featured": true,
"position": 1,
"collection_products": [
{
"id": "a7fe8bd9-3023-4037-8cc4-60e141f00e62",
"product": {
"id": "e2b9f659-e01e-430b-aa16-14a22158cd36",
"name": "Craft Coffee Kit",
"brand": {
"id": "7141fe00-a619-41c5-ac6a-b54342412f6d",
"name": "Cookie Company",
"logo_image": null,
"shipping_price": 1000,
"free_shipping_minimum": null,
"brand_values": []
},
"subtitle": null,
"subtitle_short": null,
"recipient_description": "",
"variants_label": null,
"variants_num_selectable": null,
"variants": [],
"variant_groups": [],
"images": [],
"price": 1000,
"price_is_variable": false,
"restricted_states": [],
"attributes": [],
"updated_at": "2026-06-03T12:24:04Z",
"status": "active"
}
},
{
"id": "3ceb6404-75ed-4be7-a022-e4afdf078749",
"product": {
"id": "bae8372a-4325-4c5c-b58d-57e8f0a891ad",
"name": "Artisan Snack Box",
"brand": {
"id": "7141fe00-a619-41c5-ac6a-b54342412f6d",
"name": "Cookie Company",
"logo_image": null,
"shipping_price": 1000,
"free_shipping_minimum": null,
"brand_values": []
},
"subtitle": null,
"subtitle_short": null,
"recipient_description": "",
"variants_label": null,
"variants_num_selectable": null,
"variants": [],
"variant_groups": [],
"images": [],
"price": 1000,
"price_is_variable": false,
"restricted_states": [],
"attributes": [],
"updated_at": "2026-06-03T12:24:04Z",
"status": "active"
}
}
]
}
]
}
}{
"error": "Collection not found"
}