# JobNimbus

JobNimbus is a CRM and project management software designed for contractors, helping streamline scheduling, estimates, invoicing, and job tracking.

- **Category:** crm
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 21
- **Triggers:** 0
- **Slug:** `JOBNIMBUS`
- **Version:** 20260227_00

## Tools

### Create Location

**Slug:** `JOBNIMBUS_ACCOUNT_CREATE_LOCATION`

Tool to create a new location in JobNimbus. Use after gathering address and contact details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `zip` | string | No | Postal code for the location |
| `city` | string | No | City of the location |
| `code` | string | No | Short code or abbreviation for the location |
| `name` | string | Yes | Name of the location |
| `phone` | string | No | Phone number for the location |
| `is_active` | boolean | No | Whether the location is active |
| `state_text` | string | No | State or province of the location |
| `country_name` | string | No | Country of the location |
| `address_line1` | string | No | First line of the location's address |
| `address_line2` | string | No | Second line of the location's address |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Account Settings

**Slug:** `JOBNIMBUS_ACCOUNT_GET_SETTINGS`

Tool to retrieve account-wide settings (workflows, types, sources). Use after authenticating to load or refresh workflow and source mappings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `actor` | string | No | Optional JobNimbus user email to impersonate this request |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Activity by ID

**Slug:** `JOBNIMBUS_ACTIVITY_GET`

Retrieves a specific JobNimbus activity by its unique jnid. Activities in JobNimbus represent logged events such as task modifications, contact updates, job creation, and other system actions. Each activity contains details about what changed, who made the change, and when it occurred. Use this action when you need detailed information about a specific activity, such as viewing the full history of changes or understanding who performed an action.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `jnid` | string | Yes | The unique JobNimbus ID (jnid) of the activity to retrieve. This is a hexadecimal string identifier. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Contact by ID

**Slug:** `JOBNIMBUS_CONTACT_GET`

Tool to retrieve a contact by ID. Use after obtaining the contact’s jnid to fetch full details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `jnid` | string | Yes | The JobNimbus ID (jnid) of the contact to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Contacts

**Slug:** `JOBNIMBUS_CONTACT_LIST`

Tool to list all contacts. Use when you need to fetch multiple contacts, e.g., for reporting or synchronization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `from` | integer | No | Zero-based offset for pagination. Defaults to 0. |
| `size` | integer | No | Maximum number of contacts to return (>=1). Defaults to 1000. |
| `fields` | string | No | Comma-separated list of contact fields to include. Defaults to all fields. |
| `filter` | string | No | URL-encoded JSON filter for advanced querying. |
| `sort_field` | string | No | Field to sort results by. Defaults to 'date_created'. |
| `sort_direction` | string ("asc" | "desc") | No | Sort order: 'asc' or 'desc'. Defaults to 'desc'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Contact

**Slug:** `JOBNIMBUS_CONTACT_UPDATE`

Tool to update an existing contact. Use when you have a contact's JNID and need to modify its fields. Call after fetching or creating a contact.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `zip` | string | No | ZIP code of the contact |
| `city` | string | No | City of the contact |
| `jnid` | string | Yes | Unique JobNimbus identifier of the contact to update |
| `tags` | array | No | Tags associated with the contact |
| `email` | string | No | Email address of the contact |
| `company` | string | No | Company name associated with the contact |
| `website` | string | No | Website URL |
| `lastName` | string | No | Last name of the contact |
| `faxNumber` | string | No | Fax number |
| `firstName` | string | No | First name of the contact |
| `homePhone` | string | No | Home phone number |
| `stateText` | string | No | State of the contact |
| `workPhone` | string | No | Work phone number |
| `externalId` | string | No | External identifier |
| `sourceName` | string | No | Source from which the contact originated |
| `statusName` | string | No | Status of the contact |
| `contactType` | string | No | Type/category of the contact (record type name) |
| `description` | string | No | Internal notes or description |
| `displayName` | string | No | Display name of the contact |
| `mobilePhone` | string | No | Mobile phone number |
| `addressLine1` | string | No | Address line 1 |
| `addressLine2` | string | No | Address line 2 |
| `salesRepName` | string | No | Name of the sales representative |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create File Attachment Type

**Slug:** `JOBNIMBUS_CREATE_FILE_TYPE`

Creates a new file attachment type in JobNimbus. File types are custom categories used to organize and classify document attachments (e.g., contracts, warranties, photos, permits). You must create a file type before you can upload files with that category.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `IsActive` | boolean | No | Whether the file type should be active and available for use immediately. Defaults to True. |
| `TypeName` | string | Yes | The name for the new file attachment type (e.g., 'Contract', 'Warranty', 'Photo Gallery'). This will be used to categorize files in JobNimbus. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Material Order

**Slug:** `JOBNIMBUS_CREATE_MATERIAL_ORDER`

Creates a new material order in JobNimbus. A material order tracks materials needed for a job and can be submitted to suppliers. Material orders must be linked to a contact or job record and include at least one line item referencing an existing product from your Products & Services catalog. Prerequisites: - At least one contact or job record must exist (use JOBNIMBUS_CONTACT_LIST to find contacts) - Products must exist in your catalog (use JOBNIMBUS_LIST_PRODUCTS to find product IDs) Note: Custom line items are not supported - all items must reference existing products by their jnid.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `items` | array | Yes | List of items to include in this material order (at least one required). Each item must reference an existing product by its jnid. |
| `notes` | string | No | Optional notes or comments about the order. |
| `number` | string | No | Optional material order number. |
| `status` | integer | No | Numeric status code of the material order (0-7). Use 0 for Draft. |
| `related` | array | Yes | List of related jobs or contacts (at least one required). Material orders must be linked to a job or contact record. |
| `vendorId` | integer | No | Identifier of the vendor for this order. |
| `assignedToId` | integer | No | User ID to whom this order is assigned. |
| `expectedDate` | string | No | Expected delivery date in ISO 8601 format (YYYY-MM-DD). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Task

**Slug:** `JOBNIMBUS_CREATE_TASK`

Tool to create a new task. Use when scheduling or tracking tasks linked to contacts or jobs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `title` | string | Yes | Title of the task. |
| `related` | array | No | List of related records (contacts or jobs) to attach this task to. |
| `date_end` | integer | No | End date as a Unix timestamp (seconds since epoch). Use 0 or omit for open-ended tasks. |
| `date_start` | integer | Yes | Start date as a Unix timestamp (seconds since epoch). |
| `record_type` | integer | No | Numeric identifier of the task type. |
| `record_type_name` | string | Yes | Name of the task type as defined in account settings. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Workflow Status

**Slug:** `JOBNIMBUS_CREATE_WORKFLOW_STATUS`

Tool to create a new status in an existing workflow. Use after confirming the workflow ID to add specialized status entries like 'Lead' or 'Inspection'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Display name of the new status |
| `is_lead` | boolean | No | Whether this status marks a lead |
| `is_active` | boolean | No | Whether the status is active |
| `is_closed` | boolean | No | Whether this status marks closure |
| `workflowid` | string | Yes | ID of the target workflow (obtained from JOBNIMBUS_ACCOUNT_GET_SETTINGS) |
| `is_archived` | boolean | No | Whether this status should be archived |
| `force_mobile_sync` | boolean | No | Whether to force mobile sync on status change |
| `send_to_quickbooks` | boolean | No | Whether to sync this status to QuickBooks |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get File Attachment Content by ID

**Slug:** `JOBNIMBUS_FILE_GET`

Retrieves the raw content of a specific file attachment from JobNimbus by its unique ID. This action downloads the actual file content (binary data for PDFs, images, etc.) but does NOT return file metadata like filename, content type, or size. If you need metadata, use the files list endpoint instead. Common use case: Download a file attachment after obtaining its jnid from a list files query or from a related record (contact, job, etc.).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `jnid` | string | Yes | The unique JobNimbus ID (jnid) of the file attachment to retrieve. This ID can be obtained from file list endpoints or from related record responses. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Activities

**Slug:** `JOBNIMBUS_LIST_ACTIVITIES`

Tool to retrieve all activities. Use after authentication to fetch a paginated list of activities.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `size` | integer | No | Maximum number of activities to return (>=1). Defaults to 1000. |
| `filter` | string | No | URL-encoded JSON filter for advanced querying. |
| `offset` | integer | No | Zero-based offset for pagination. Defaults to 0. |
| `sort_field` | string | No | Field to sort results by. Defaults to 'date_created'. |
| `sort_direction` | string ("asc" | "desc") | No | Sort order: 'asc' or 'desc'. Defaults to 'desc'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Invoices

**Slug:** `JOBNIMBUS_LIST_INVOICES`

Tool to list all invoices (v2). Use when you need to fetch multiple invoice records.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `from` | integer | No | Zero-based offset for pagination. Defaults to 0. |
| `size` | integer | No | Maximum number of invoices to return (>=1). Defaults to 1000. |
| `fields` | string | No | Comma-separated list of invoice fields to include. Defaults to all fields. |
| `filter` | string | No | JSON filter for advanced querying (e.g., filter by status_name, customer, etc.). Note: May require proper URL encoding depending on API implementation. |
| `sort_field` | string | No | Field to sort results by. Defaults to 'date_created'. |
| `sort_direction` | string ("asc" | "desc") | No | Sort order: 'asc' or 'desc'. Defaults to 'desc'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Material Orders

**Slug:** `JOBNIMBUS_LIST_MATERIAL_ORDERS`

Tool to list all material orders (v2). Use after authentication to fetch multiple material order records.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `from` | integer | No | Zero-based offset for pagination. Defaults to 0. |
| `size` | integer | No | Maximum number of material orders to return (>=1). Defaults to 1000. |
| `fields` | string | No | Comma-separated list of material order fields to include. Defaults to all fields. |
| `filter` | string | No | URL-encoded JSON filter for advanced querying. |
| `sort_field` | string | No | Field to sort results by. Defaults to 'date_created'. |
| `sort_direction` | string ("asc" | "desc") | No | Sort order: 'asc' or 'desc'. Defaults to 'desc'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Payments

**Slug:** `JOBNIMBUS_LIST_PAYMENTS`

Tool to retrieve payments list with optional filters. Use after auth.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for pagination (>=1). Defaults to 1. |
| `jobId` | integer | No | Filter payments by associated job ID. |
| `dateTo` | string | No | End date (YYYY-MM-DD) filter. |
| `perPage` | integer | No | Number of payments per page (>=1). Defaults to 100. |
| `dateFrom` | string | No | Start date (YYYY-MM-DD) filter. |
| `contactId` | integer | No | Filter payments by associated contact ID. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Products

**Slug:** `JOBNIMBUS_LIST_PRODUCTS`

Tool to list all products. Use after authentication to fetch full product catalog.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `from` | integer | No | Zero-based offset for pagination. Defaults to 0. |
| `size` | integer | No | Maximum number of products to return (>=1). Defaults to 1000. |
| `fields` | string | No | Comma-separated list of product fields to include. Defaults to all fields. |
| `filter` | string | No | URL-encoded JSON filter for advanced querying. |
| `sort_field` | string | No | Field to sort results by. Defaults to 'date_created'. |
| `sort_direction` | string ("asc" | "desc") | No | Sort order: 'asc' or 'desc'. Defaults to 'desc'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Work Orders

**Slug:** `JOBNIMBUS_LIST_WORKORDERS`

Tool to retrieve all work orders (v2). Use after authentication when you need a paginated list of work orders.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `from` | integer | No | Zero-based offset for pagination. Defaults to 0. |
| `size` | integer | No | Maximum number of work orders to return (>=1). Defaults to 1000. |
| `fields` | string | No | Comma-separated list of work order fields to include. Defaults to all fields. |
| `filter` | string | No | URL-encoded JSON filter for advanced querying. |
| `sort_field` | string | No | Field to sort results by. Defaults to 'date_created'. |
| `sort_direction` | string ("asc" | "desc") | No | Sort order: 'asc' or 'desc'. Defaults to 'desc'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Product by ID

**Slug:** `JOBNIMBUS_PRODUCT_GET`

Retrieves detailed information about a specific JobNimbus product using its jnid. Use this action when you need to get full details about a product, including pricing, cost, unit of measurement, and tax settings. Obtain the jnid first using the List Products action.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `jnid` | string | Yes | The JobNimbus product ID (jnid) to retrieve. A 22-character alphanumeric identifier. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Tasks

**Slug:** `JOBNIMBUS_TASK_LIST`

Tool to list all tasks. Use when you need an overview of tasks for planning or review.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of results (1-indexed). |
| `status` | string | No | Filter tasks by status. |
| `due_date` | string | No | Filter by due date in YYYY-MM-DD format. |
| `per_page` | integer | No | Number of results per page. |
| `assigned_to` | integer | No | Filter by assigned user ID. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Task

**Slug:** `JOBNIMBUS_UPDATE_TASK`

Update an existing JobNimbus task by its jnid. Allows updating task details like title, description, dates, priority, and task type. Use List Tasks action to find task jnids. Note: To update task type, both record_type and record_type_name must be provided together.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `jnid` | string | Yes | JobNimbus ID (jnid) of the task to update. Obtain from List Tasks or Create Task actions. |
| `title` | string | No | New title for the task |
| `date_end` | integer | No | New end timestamp in Unix epoch seconds |
| `priority` | integer | No | Task priority: 0=none, 1=high, 2=medium, 3=low |
| `date_start` | integer | No | New start timestamp in Unix epoch seconds |
| `description` | string | No | New description or notes for the task |
| `record_type` | integer | No | Task type ID. Must be provided with record_type_name if updating task type. |
| `record_type_name` | string | No | Task type name. Must be provided with record_type if updating task type. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Units of Measure

**Slug:** `JOBNIMBUS_UTILITY_GET_UOMS`

Tool to retrieve list of supported units of measure. Use after authenticating when you need to present or validate measurement units.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
