The projects command lets you create, view, and update projects for a client.
Create a project
This command creates a project with at least one task. Use this when setting up billable work for a client from the terminal.
neetoinvoice projects create \
--client-id <client-uuid> \
--name "Website redesign" \
--task "Development" \
--user-email [email protected] \
--billing-method hourly_project_rate \
--hourly-rate 100 \
--currency USD
Required flags:
--client-id- Client record ID (UUID)--name- Project name--task- Task name (repeatable; at least one required)--user-email- Email of the acting organization user
Optional flags:
-
--billing-method- How time and fees are billed for the project. Accepted values:hourly_project_rate- One hourly rate applied to the whole projecthourly_person_rate- Hourly rate set per team member on the projecthourly_task_rate- Hourly rate set per task on the projectfixed_price_project- Single flat fee for the entire project (use with--flat-amount)
--hourly-rate- Default hourly billing rate for the project (used when billing method ishourly_project_rate)--flat-amount- Total fixed price for the project (used when billing method isfixed_price_project)--currency- ISO currency code for project billing (e.g.USD,EUR)--internal-notes- Internal notes for your team only; not shown on client-facing invoices--subdomain <name>- Target a specific logged-in workspace--json- Return JSON envelope output--quiet- Return raw payload only--toon- Return TOON output
Sample output:
{
"data": {
"notice_code": "thumbs_up",
"project": {
"name": "CLI Doc Test Project 1782147369",
"identifier": "e7a306eabfdd761fc2d8",
"billing_method": "hourly_project_rate",
"hourly_rate": 100.0,
"currency": "USD",
"id": "cb97c012-9beb-41f8-ab93-f25f9f1db849"
}
}
}
Show a project
This command shows project details, tasks, and checklists. Use this when you need task IDs for logging time or assigning users.
neetoinvoice projects show e7a306eabfdd761fc2d8
Required argument:
<project-id>- Project identifier (short hex string) or record UUID. Refer to Getting the Project ID section for detailed instructions.
Optional flags:
--subdomain <name>- Target a specific logged-in workspace--json- Return JSON envelope output--quiet- Return raw payload only--toon- Return TOON output
Sample output (captured from sojanvarghese workspace, truncated):
{
"data": {
"project": {
"identifier": "e7a306eabfdd761fc2d8",
"name": "CLI Doc Test Project 1782147369",
"hourly_rate": 100.0,
"currency": "USD",
"client": {
"identifier": "59dad05d64c302e59a02",
"name": "CLI Doc Test Client 1782147353"
}
},
"tasks": [
{
"id": "03d76f53-1c06-4818-bb98-6487713cfa4c",
"name": "Development"
}
]
}
}
Update a project
This command updates an existing project. Use this when you need to change project settings from a script.
neetoinvoice projects update e7a306eabfdd761fc2d8 \
--user-email [email protected] \
--internal-notes "Q2 engagement"
Required argument:
<project-id>- Project identifier (short hex string) or record UUID. Refer to Getting the Project ID section for detailed instructions.
Required flags:
--user-email- Email of the acting organization user
Optional flags:
--client-id- Client record ID (UUID)--name- Project name--task- Task name-
--billing-method- How time and fees are billed for the project. Accepted values:hourly_project_rate- One hourly rate applied to the whole projecthourly_person_rate- Hourly rate set per team member on the projecthourly_task_rate- Hourly rate set per task on the projectfixed_price_project- Single flat fee for the entire project (use with--flat-amount)
--hourly-rate- Default hourly billing rate for the project (used when billing method ishourly_project_rate)--flat-amount- Total fixed price for the project (used when billing method isfixed_price_project)--currency- ISO currency code for project billing (e.g.USD,EUR)--internal-notes- Internal notes for your team only; not shown on client-facing invoices--subdomain <name>- Target a specific logged-in workspace--json- Return JSON envelope output--quiet- Return raw payload only--toon- Return TOON output
Sample output:
{
"data": {
"notice_code": "thumbs_up",
"project": {
"identifier": "e7a306eabfdd761fc2d8",
"internal_notes": "CLI doc notes"
}
}
}