Productsup
Platform API

Projects

List, create, edit, and delete projects using the Platform API.

5 min read

Projects group your sites within your account. Each account can have multiple projects, and each project can contain multiple sites.

Get

Lists all projects for your account, or a single project when you provide a project identifier.

Both requests return the same response structure. When you request a specific project, the response contains only that project.

Get all projects for your account

GET https://platform-api.productsup.io/platform/v2/projects

curl https://platform-api.productsup.io/platform/v2/projects
{
    "success": true,
    "Projects": [
        {
            "id": "1",
            "name": "default project",
            "created_at": "2013-03-21 12:47:57",
            "links": [...]
        },
        ...
    ]
}

Get a project by its identifier

GET https://platform-api.productsup.io/platform/v2/projects/<projectId>

curl https://platform-api.productsup.io/platform/v2/projects/1
{
    "success": true,
    "Projects": [{
        "id": "1",
        "name": "default project",
        "created_at": "2013-03-21 12:47:57",
        "links": [...]
    }]
}

URL parameters

FieldTypeDescription
projectIdintegerProject to retrieve

Response fields

FieldTypeDescription
successbooleanIndicates request status
ProjectsarrayList of projects

Project fields

FieldTypeDescription
idintegerInternal ID
namestringName of the project
created_atdateDate of creation
linksarrayList of relevant resources
NameDescription
selfLink to the project detail endpoint
sitesLink to the list of sites belonging to the project

Create

To create a new project, send a POST request with the project name in the request body.

POST https://platform-api.productsup.io/platform/v2/projects

curl -d '{"name":"test project"}' \
    https://platform-api.productsup.io/platform/v2/projects
{
    "success": true,
    "Projects": [{
        "id": 125,
        "name": "test project",
        "created_at": "2015-07-30 12:54:52",
        "links": [...]
    }]
}

HTTP headers

NameValue
Content-Typeapplication/json

Request body fields

FieldTypeDescription
namestringName of the project

Leave id and created_at empty. Providing values for these fields either overwrites them or causes the request to return an error.

Response fields

FieldTypeDescription
successbooleanIndicates request status
ProjectsarrayDetails of the created project

The response uses the same project fields and link fields as the Get endpoint.

Edit

To edit an existing project, send a PUT request with the project identifier in the URL and the updated fields in the request body.

PUT https://platform-api.productsup.io/platform/v2/projects/<projectId>

curl -d '{"name":"example project"}' \
    https://platform-api.productsup.io/platform/v2/projects/125
{
    "success": true,
    "Projects": [{
        "id": 125,
        "name": "example project",
        "created_at": "2015-07-30 12:54:52",
        "links": [...]
    }]
}

URL parameters

FieldTypeDescription
projectIdintegerExisting project to edit

HTTP headers

NameValue
Content-Typeapplication/json

Provide the request data as a JSON object.

Request body fields

FieldTypeDescription
idintegerID of the existing project
namestringName of the project

Response fields

FieldTypeDescription
successbooleanIndicates request status
ProjectsarrayDetails of the updated project

The response uses the same project fields and link fields as the Get endpoint.

Delete

To delete a project, send a DELETE request with the project identifier in the URL.

DELETE https://platform-api.productsup.io/platform/v2/projects/<projectId>

curl -X DELETE https://platform-api.productsup.io/platform/v2/projects/125
{"success":true}

URL parameters

FieldTypeDescription
projectIdintegerProject to delete

Response body fields

FieldTypeDescription
successbooleanIndicates the success of the action

On this page

Still stuck?

Reach out to our support team and we’ll help you get unstuck.

Contact support