Skip to content

Get a project by client

The Fstop API allows you to retrieve projects filtered by a specific client using a query parameter.

In this guide, you’ll make a GET request to the /api/projects/ endpoint with a client_id query parameter to retrieve all projects for a specific client.

Before you make a GET request, ensure that you have an access token. For instructions on requesting an access token, see Getting started with the Fstop API.

You’ll also need the UUID of the client whose projects you want to retrieve.

  1. Open a terminal and run the following command:

    get_projects_by_client.sh
    curl -X GET "http://localhost:8000/api/projects/?client_id=550e8400-e29b-41d4-a716-446655440000" \
    -H "Authorization: Bearer YOUR_ACCESS_TOKEN"

    The API returns a 200 OK and a list of projects for that client:

    get_projects_by_client_response.json
    [
    {
    "id": "660e8400-e29b-41d4-a716-446655440000",
    "project_name": "Wedding",
    "project_type": "event",
    "client": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "first_name": "John",
    "last_name": "Doe",
    "city": "Cleveland",
    "state": "OH",
    "zip_code": "44122",
    "email": "john.doe@example.com",
    "phone_number": "+12161231234",
    "created_at": "2026-05-21T10:00:00Z"
    },
    "created_at": "2026-05-21T10:15:00Z"
    },
    {
    "id": "660e8400-e29b-41d4-a716-446655440001",
    "project_name": "Family Portrait",
    "project_type": "portrait",
    "client": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "first_name": "John",
    "last_name": "Doe",
    "city": "Cleveland",
    "state": "OH",
    "zip_code": "44122",
    "email": "john.doe@example.com",
    "phone_number": "+12161231234",
    "created_at": "2026-05-21T10:00:00Z"
    },
    "created_at": "2026-05-21T10:20:00Z"
    }
    ]
  2. Using the Python SDK:

    get_projects_by_client.py
    from fstop import Fstop
    with Fstop(jwt_auth="YOUR_ACCESS_TOKEN") as f_client:
    projects = f_client.projects.list_projects()
    # Filter projects by client_id client-side
    client_id = "550e8400-e29b-41d4-a716-446655440000"
    filtered = [p for p in projects if p.client.id == client_id]
    for project in filtered:
    print(f"{project.project_name} ({project.project_type})")

You can use the filtered project data in your application. For example, you could display all projects associated with a specific client or retrieve bookings and galleries for those projects.

See GET /api/projects/ for a full list of request parameters and response schemas.