Get Project
Retrieve a single project by its ID or slug.Path Parameters
string
required
The project ID or slug
Response
string
The project’s unique ID
string
The project’s URL-safe slug
string
The project’s name
string
A short summary of the project
string
The full project description
array
List of category names (max 3)
array
List of additional category names (max 256)
object
The project’s license information
string
Project status:
approved, rejected, draft, unlisted, archived, processing, withheld, scheduled, private, unknowninteger
Total download count
integer
Number of followers
string
ISO 8601 timestamp of when the project was first published
string
ISO 8601 timestamp of when the project was last updated
string
The ID of the project’s team
Example Request
Example Response
Get Multiple Projects
Retrieve multiple projects by their IDs or slugs.Query Parameters
string
required
JSON array of project IDs or slugs as a string
Example Request
Check Project ID
Check if a project ID or slug exists and get its canonical ID.Path Parameters
string
required
The project ID or slug to check
Response
string
The canonical project ID if it exists
Example Request
Search Projects
Search for projects with filters.Query Parameters
string
The search query
string
Facets to filter by (JSON string)
string
The sorting method:
relevance, downloads, follows, newest, updatedinteger
The offset for pagination (default: 0)
integer
Number of results to return (default: 10, max: 100)
Example Request
Get Random Projects
Get a random selection of projects.Query Parameters
integer
required
Number of random projects to return (min: 1, max: 100)
Example Request
Update Project
Update a project’s metadata. Requires authentication andPROJECT_WRITE scope.
Path Parameters
string
required
The project ID or slug
Request Body
string
New project name (3-64 characters)
string
New project summary (3-256 characters)
string
New project description (max 65536 characters)
array
New categories array (max 3)
array
New additional categories (max 256)
string
SPDX license identifier
string
URL to license text (max 2048 characters)
string
New URL-safe slug (3-64 characters)
string
New project status
object
Object mapping platform names to URLs (or null to delete)
Example Request
Bulk Edit Projects
Edit multiple projects at once. Requires authentication.Query Parameters
string
required
JSON array of project IDs
Request Body
array
Set categories for all projects
array
Add categories to all projects
array
Remove categories from all projects
array
Set additional categories
array
Add additional categories
array
Remove additional categories
object
Update link URLs for all projects
Delete Project
Delete a project. Requires authentication and appropriate permissions.Path Parameters
string
required
The project ID or slug
Example Request
Follow/Unfollow Project
Follow or unfollow a project. Requires authentication.Path Parameters
string
required
The project ID or slug
Example Request
Get Project Dependencies
Get all dependencies for a project.Path Parameters
string
required
The project ID or slug
Response
array
Array of dependent projects
array
Array of specific dependent versions
Example Request
Manage Project Icon
Upload or delete a project icon. Requires authentication.Path Parameters
string
required
The project ID or slug
Query Parameters (PATCH only)
string
required
Image file extension (png, jpg, etc.)
Example Request
Manage Gallery Images
Add, edit, or delete gallery images. Requires authentication.Common Use Cases
Creating a New Project- Prepare project metadata
- Create the project via API or web interface
- Upload initial version with files
- Set project icon and gallery images
- Submit for approval if needed
- Use
statusfield to control project visibility approved- Public and searchableunlisted- Public but not in searchprivate- Only visible to team membersdraft- Not yet published
- Main categories (max 3) are used for primary classification
- Additional categories (max 256) for more specific tags
- Categories must exist in the platform’s category list
