Skip to main content

Quick Start Guide

This guide will help you start the Zou API server and make your first authenticated requests. By the end, you’ll have created a project and retrieved production data via the REST API.
This guide assumes you’ve completed the Installation steps, including creating the database and admin user.

Start the API Server

Development Mode

For development and testing, use the built-in Flask development server:
You should see:
The server is now running and ready to accept requests.
The debug server auto-reloads on code changes and provides detailed error messages. Perfect for development!

Production Mode

For production deployments, use Gunicorn (installed automatically with Zou):
Or with custom settings:
Never use the debug server in production. Always use a production WSGI server like Gunicorn.

Authentication

Login and Get Tokens

Zou uses JWT (JSON Web Tokens) for authentication. First, log in with your admin credentials:

Response Structure

Successful login returns:
The access_token is valid for 7 days by default. Use the refresh_token to get a new access token without re-entering credentials.

Make Authenticated Requests

Use the access token in the Authorization header for all subsequent requests:

Check Authentication Status

Working with Projects

Get All Open Projects

Retrieve currently active projects:

Create a New Project

Create your first production project:

Response Example

Working with Assets

Get Asset Types for a Project

Create an Asset

Complete Example: End-to-End Workflow

Here’s a complete script that demonstrates the full workflow:

Run the Example

Expected output:

Using the Gazu Python Client

For production integrations, use the Gazu Python client instead of raw HTTP requests:
Gazu provides a high-level, Pythonic interface to Zou and is the recommended way to integrate with your pipeline tools.

Event Stream

Zou publishes real-time events for all data changes. Start the event stream server:
Connect to the event stream:

Next Steps

Now that you’re familiar with the basics:

API Reference

Explore all available endpoints and their parameters

Authentication Guide

Learn about 2FA, API keys, and advanced auth features

Data Models

Understand projects, assets, shots, tasks, and relationships

File Management

Work with working files, previews, and file trees

Troubleshooting

Connection Refused

If you get connection errors, ensure:
  • The Zou server is running
  • You’re using the correct host and port
  • Firewall rules allow connections

401 Unauthorized

If requests fail with 401:
  • Check that your access token is valid
  • Tokens expire after 7 days - log in again
  • Ensure the Authorization header is formatted correctly: Bearer YOUR_TOKEN

500 Internal Server Error

If you encounter server errors:
  • Check the Zou server logs for stack traces
  • Verify database connectivity
  • Ensure all required environment variables are set

Database Connection Failed

If Zou can’t connect to PostgreSQL:
  • Verify PostgreSQL is running: pg_isready
  • Check database credentials in environment variables
  • Ensure the zoudb database exists

Get Help

If you run into issues: