canonical: https://jentic.com/apis/outlign.co/outlign

# Outlign API

Outlign is a project management platform designed for professional services firms to manage client work, project phases, and repeatable workflows. The API provides full CRUD operations for companies, clients, projects, project templates, phases, and steps (tasks). Use it to automate project creation from templates, track project phases across client engagements, manage client records, and integrate Outlign project data with other business systems like CRMs, time tracking, or billing platforms.

## For AI agents

Manage Outlign companies, clients, projects, project templates, phases, and steps programmatically for professional services workflow automation.

## Scope

Does not handle time tracking, billing, or resource scheduling directly - use for project structure, client management, and workflow automation only.

## Capabilities

- List and retrieve company accounts within the Outlign workspace
- Create, read, update, and delete client records associated with companies
- Create, read, update, and delete projects tied to clients and companies
- Manage project templates for repeatable workflows and engagements
- Configure project phases (milestones or stages within projects)
- Create and manage steps (individual tasks or action items) within projects
- Query clients by company or title for targeted client management
- Instantiate projects from templates to standardize engagement workflows

## Use cases

### Automated Project Onboarding from CRM

When a deal closes in a CRM like Salesforce or HubSpot, automatically create a corresponding Outlign client and project. POST /clients creates the client record with company_id, then POST /projects creates the project tied to that client. Use GET /project-templates to list available templates and instantiate a project from a template if the engagement follows a standard workflow (e.g., onboarding, implementation, consulting). This eliminates manual project setup and ensures every client engagement starts with the correct phase and task structure.

Example prompt: POST /clients with title and company_id from CRM contact data, then POST /projects with the client_id and template_id to instantiate a project from a template.

### Project Phase and Task Management

Manage the lifecycle of client engagements by creating and updating project phases and steps. GET /projects retrieves all projects, POST /phases adds a new milestone or stage, and POST /steps creates individual tasks within a phase. Update steps with PUT `/steps/{id}` as work progresses, or delete with DELETE `/steps/{id}` when tasks are canceled. This allows agents to track project status, generate phase-level reports, or trigger notifications when a phase completes.

Example prompt: POST /phases with a phase name and project_id, then POST /steps with step details (name, description, due date) tied to the phase. Retrieve phase and step status with GET /phases and GET /steps.

### Template-Based Workflow Standardization

Build a library of project templates for common engagement types (onboarding, audit, consulting, implementation) and instantiate them programmatically. GET /project-templates lists all templates, POST /project-templates creates a new reusable template with predefined phases and steps, and POST /projects with a template_id clones the template structure into a new project. This ensures consistency across client engagements and reduces setup time for recurring project types.

Example prompt: POST /project-templates with phases and steps for a standard engagement type, then POST /projects with template_id to instantiate a new project for a client from that template.

### Client Portfolio Management

Maintain a centralized client directory across multiple companies within the Outlign workspace. GET /clients retrieves all clients with optional filters for company_id or title, POST /clients creates new client records, and PUT `/clients/{id}` updates client information as relationships evolve. This supports multi-company agencies or consulting firms managing client portfolios across business units, enabling agents to query client status, generate client lists, or sync client data with billing or CRM systems.

Example prompt: GET /clients with company_id filter to retrieve clients for a specific business unit, then POST /clients to add new clients or PUT `/clients/{id}` to update existing records.

### AI Agent for Project Operations

Let an AI agent handle Outlign project admin tasks - creating clients, setting up projects from templates, adding phases and steps, and querying project status. Through Jentic, the agent searches by intent ('create an Outlign project from a template') and loads only the required endpoints. Authentication credentials are injected at execution time, keeping them out of agent context.

Example prompt: Use the Jentic search query 'create an Outlign project from a template' to find POST /projects, load its schema, and execute with client_id and template_id provided by the user.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/companies` | List all companies in the workspace |
| POST | `/clients` | Create a new client record |
| POST | `/projects` | Create a new project, optionally from a template |
| GET | `/project-templates` | List all project templates |
| POST | `/phases` | Add a phase to a project |
| POST | `/steps` | Create a step (task) within a phase |
| PUT | `/clients/{id}` | Update a client record |

## Key resources

- **Companies** — Top-level organizational units within the Outlign workspace
- **Clients** — Client records associated with companies for portfolio management
- **Projects** — Client engagements with phases and steps tracking work through completion
- **Project Templates** — Reusable project structures for standardizing engagement workflows
- **Phases** — Milestones or stages within projects (e.g., discovery, implementation, delivery)
- **Steps** — Individual tasks or action items within phases

## Why Jentic

- **Setup:** Wiring the Outlign API by hand means running its OAuth 2.0 authorization code flow against go.outlign.co, handling token refresh, and managing your own retries across client and project calls. Through Jentic you install once, import the Outlign API from the API Directory, store the OAuth credentials once, and your agent calls it.
- **Permission scoping:** Outlign puts the client id in the URL path (`/clients/{id}`) while creating projects, phases, and steps through request bodies, so scope by operations: limit the agent to the operations it needs, such as listing companies and creating projects, and leave client updates out unless you add them. You choose the allowed set, so a setup agent can build project structure without editing existing clients.
- **Credential handling:** Your Outlign OAuth credentials are stored once, encrypted, by your own Jentic One instance and injected at execution time. They never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'create a new project' or 'add a client', and Jentic returns the matching Outlign operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Asana API** — Asana offers task and project management with a broader feature set for general project tracking.
- **ClickUp API** — ClickUp provides highly customizable project management with task hierarchies and multiple views.
- **monday.com API** — monday.com is a visual work OS with boards and workflows for team collaboration.

## FAQ

### What authentication does the Outlign API use?

The Outlign API uses API key authentication passed in request headers. Through Jentic, API keys are stored encrypted and injected at execution time, keeping them out of agent prompts and transcripts.

### Can I create projects from templates via the API?

Yes. GET /project-templates retrieves available templates, then POST /projects with a template_id parameter instantiates a new project with the template's predefined phases and steps.

### How do I manage tasks within an Outlign project?

Tasks are represented as 'steps' in the API. POST /steps creates a new task tied to a phase, GET /steps retrieves all steps, and PUT `/steps/{id}` updates a step's details. DELETE `/steps/{id}` removes a step.

### Can I filter clients by company?

Yes. GET /clients accepts a company_id query parameter to retrieve only clients associated with a specific company within the Outlign workspace.

### Is the Outlign API free?

API access is included with Outlign subscriptions. Pricing depends on the Outlign plan tier and is independent of API usage volume.

### How do I integrate Outlign with a CRM like Salesforce?

Use POST /clients to create Outlign client records when deals close in Salesforce, then POST /projects to initiate a project for that client. Sync client and project status bidirectionally using webhooks or scheduled jobs.

### Can I limit what my agent is allowed to do with the Outlign API?

Yes. Jentic One is self-hosted by you, so your own rules decide which Outlign operations and credentials the agent may use. You can allow only the operations it needs, such as listing companies with GET /companies and creating projects with POST /projects and phases with POST /phases, while leaving client edits like PUT `/clients/{id}` out of the allowed set. Because you choose the exact set, a setup agent can build project and template structure without touching existing client records.
