> ## Documentation Index
> Fetch the complete documentation index at: https://docs.jinba.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Faximo FAX Service

> Send FAX messages and search FAX history using Faximo service

## Overview

Faximo provides comprehensive FAX services through both standard Faximo and FaximoSilver platforms. Send documents via FAX and track your FAX history with detailed delivery reports and status tracking.

## Key Features

### FAXIMO\_SEND\_FAX

* Send FAX messages to single or multiple recipients
* Support for document attachments
* Delivery confirmation and tracking
* Customizable FAX settings and options

### FAXIMO\_SEARCH\_HISTORY

* Search through FAX send history
* Track delivery status and timing
* Access historical FAX records
* Filtering and search capabilities

## Authentication

Faximo requires login credentials for your Faximo or FaximoSilver account.

**Required credentials:**

* Login ID
* Password

**Note**: Treat credentials as sensitive information and never commit them to public repositories.

## Example: Send FAX Document

```yaml theme={null}
- id: prepare_fax_document
  name: prepare_fax_document
  tool: INPUT_FILE
  input:
    - name: description
      value: "Upload document to send via FAX"

- id: send_important_fax
  name: send_important_fax
  tool: FAXIMO_SEND_FAX
  config:
    - name: login_id
      value: "{{secrets.FAXIMO_LOGIN_ID}}"
    - name: password
      value: "{{secrets.FAXIMO_PASSWORD}}"
  input:
    - name: service_type
      value: "faximo"  # or "faximoSilver"
    - name: sendto
      value: "+1-555-123-4567,+1-555-987-6543"  # Multiple FAX numbers
    - name: subject
      value: "Important Business Document - {{date | format('YYYY-MM-DD')}}"
    - name: body
      value: |
        Dear Recipient,
        
        Please find attached important business documents for your review.
        
        This FAX was sent automatically via Jinba Flow.
        
        Best regards,
        Your Company Name
    - name: attachments
      value: "{{steps.prepare_fax_document.result.file_url}}"
    - name: priority
      value: "high"
    - name: receipt_required
      value: true

- id: log_fax_result
  name: log_fax_result
  tool: OUTPUT_TEXT
  input:
    - name: text
      value: |
        FAX sent successfully!
        Result Code: {{steps.send_important_fax.result.result_code}}
        Process Key: {{steps.send_important_fax.result.process_key}}
        Acceptance Time: {{steps.send_important_fax.result.acceptance_time}}
        Detail Number: {{steps.send_important_fax.result.unique_detail_number}}
```

## Example: Bulk FAX Campaign

```yaml theme={null}
- id: prepare_recipient_list
  name: prepare_recipient_list
  tool: PYTHON_SANDBOX_RUN
  input:
    - name: code
      value: |
        # Prepare FAX recipient list
        recipients = [
            {"name": "Company A", "fax": "+1-555-111-2222"},
            {"name": "Company B", "fax": "+1-555-333-4444"},
            {"name": "Company C", "fax": "+1-555-555-6666"}
        ]
        
        # Create comma-separated FAX numbers
        fax_numbers = ",".join([r["fax"] for r in recipients])
        print(f"FAX_NUMBERS: {fax_numbers}")
        
        # Create recipient summary
        print(f"TOTAL_RECIPIENTS: {len(recipients)}")
        for i, recipient in enumerate(recipients, 1):
            print(f"RECIPIENT_{i}: {recipient['name']} - {recipient['fax']}")

- id: upload_campaign_document
  name: upload_campaign_document
  tool: INPUT_FILE
  input:
    - name: description
      value: "Upload marketing document for FAX campaign"

- id: send_bulk_fax
  name: send_bulk_fax
  tool: FAXIMO_SEND_FAX
  config:
    - name: login_id
      value: "{{secrets.FAXIMO_LOGIN_ID}}"
    - name: password
      value: "{{secrets.FAXIMO_PASSWORD}}"
  input:
    - name: service_type
      value: "faximo"
    - name: sendto
      value: "{{steps.prepare_recipient_list.result.stdout | regex_search('FAX_NUMBERS: (.+)') | first}}"
    - name: subject
      value: "Monthly Newsletter - {{date | format('MMMM YYYY')}}"
    - name: body
      value: |
        Dear Valued Partner,
        
        Please find our monthly newsletter attached.
        
        This communication contains important updates about our services.
        
        Thank you for your continued partnership.
        
        Best regards,
        Marketing Team
    - name: attachments
      value: "{{steps.upload_campaign_document.result.file_url}}"
    - name: send_time
      value: "immediate"
    - name: notification_email
      value: "admin@yourcompany.com"

- id: track_campaign_status
  name: track_campaign_status
  tool: OUTPUT_FILE
  input:
    - name: content
      value: |
        FAX Campaign Report
        ==================
        
        Date: {{date | format('YYYY-MM-DD HH:mm:ss')}}
        Campaign: Monthly Newsletter
        
        Results:
        - Result Code: {{steps.send_bulk_fax.result.result_code}}
        - Process Key: {{steps.send_bulk_fax.result.process_key}}
        - Acceptance Time: {{steps.send_bulk_fax.result.acceptance_time}}
        - Detail Number: {{steps.send_bulk_fax.result.unique_detail_number}}
        
        Recipients: {{steps.prepare_recipient_list.result.stdout | regex_search('TOTAL_RECIPIENTS: (\\d+)') | first}}
        
        Status: Submitted for processing
        
        Next Steps:
        1. Monitor delivery status
        2. Check for any failed deliveries
        3. Follow up on delivery confirmations
    - name: filename
      value: "fax_campaign_report_{{date | format('YYYY-MM-DD')}}.txt"
    - name: fileType
      value: "txt"
```

## Example: FAX History Tracking

```yaml theme={null}
- id: search_recent_fax_history
  name: search_recent_fax_history
  tool: FAXIMO_SEARCH_HISTORY
  config:
    - name: login_id
      value: "{{secrets.FAXIMO_LOGIN_ID}}"
    - name: password
      value: "{{secrets.FAXIMO_PASSWORD}}"
  input:
    - name: service_type
      value: "faximo"
    - name: date_from
      value: "{{date | date_add(-30, 'days') | format('YYYY-MM-DD')}}"  # Last 30 days
    - name: date_to
      value: "{{date | format('YYYY-MM-DD')}}"
    - name: status_filter
      value: "all"  # or "success", "failed", "pending"

- id: analyze_fax_performance
  name: analyze_fax_performance
  tool: PYTHON_SANDBOX_RUN
  input:
    - name: code
      value: |
        import json
        from collections import Counter
        
        # Parse FAX history results
        fax_history = {{steps.search_recent_fax_history.result.history}}
        
        if not fax_history:
            print("No FAX history found for the specified period.")
        else:
            # Analyze delivery status
            statuses = [fax.get('status', 'unknown') for fax in fax_history]
            status_counts = Counter(statuses)
            
            total_faxes = len(fax_history)
            successful_faxes = status_counts.get('delivered', 0)
            failed_faxes = status_counts.get('failed', 0)
            pending_faxes = status_counts.get('pending', 0)
            
            success_rate = (successful_faxes / total_faxes * 100) if total_faxes > 0 else 0
            
            print("FAX Performance Analysis")
            print("=" * 30)
            print(f"Total FAXes sent: {total_faxes}")
            print(f"Successfully delivered: {successful_faxes}")
            print(f"Failed deliveries: {failed_faxes}")
            print(f"Pending deliveries: {pending_faxes}")
            print(f"Success rate: {success_rate:.1f}%")
            print()
            
            # Top recipients
            recipients = [fax.get('recipient', 'unknown') for fax in fax_history]
            top_recipients = Counter(recipients).most_common(5)
            
            print("Top Recipients:")
            for recipient, count in top_recipients:
                print(f"  {recipient}: {count} FAXes")

- id: create_performance_report
  name: create_performance_report
  tool: OUTPUT_FILE
  input:
    - name: content
      value: |
        FAX Performance Report
        ======================
        
        Report Period: {{steps.search_recent_fax_history.input.date_from}} to {{steps.search_recent_fax_history.input.date_to}}
        Generated: {{date | format('YYYY-MM-DD HH:mm:ss')}}
        
        {{steps.analyze_fax_performance.result.stdout}}
        
        Recommendations:
        - Monitor failed deliveries and retry if necessary
        - Verify recipient FAX numbers for failed sends
        - Consider delivery time optimization
        - Review document formatting for better compatibility
        
        For detailed delivery logs, check the Faximo service dashboard.
    - name: filename
      value: "fax_performance_report_{{date | format('YYYY-MM-DD')}}.txt"
    - name: fileType
      value: "txt"
```

## FAX Configuration Options

### Service Types

* **faximo**: Standard Faximo service
* **faximoSilver**: Premium FaximoSilver service

### Priority Levels

* **low**: Standard delivery
* **normal**: Regular priority (default)
* **high**: High priority delivery
* **urgent**: Urgent delivery

### Send Options

* **immediate**: Send immediately
* **scheduled**: Schedule for specific time
* **business\_hours\_only**: Send during business hours only
* **retry\_failed**: Automatically retry failed sends

## Response Data

### Send FAX Response

```json theme={null}
{
  "result_code": "SUCCESS",
  "process_key": "FAX123456789",
  "acceptance_time": "2024-01-15 14:30:00",
  "unique_detail_number": "DTL001234567"
}
```

### History Search Response

```json theme={null}
{
  "history": [
    {
      "id": "FAX123456",
      "recipient": "+1-555-123-4567",
      "subject": "Business Document",
      "status": "delivered",
      "send_time": "2024-01-15 14:30:00",
      "delivery_time": "2024-01-15 14:32:15"
    }
  ]
}
```

## Use Cases

* **Document Delivery**: Send contracts, invoices, and legal documents
* **Marketing Campaigns**: Distribute newsletters and promotional materials
* **Compliance Communication**: Send regulatory notices and compliance documents
* **Emergency Notifications**: Urgent communication when email is insufficient
* **Healthcare**: Medical records and prescription transmission
* **Legal Services**: Court documents and legal correspondence
* **Real Estate**: Property documents and contracts
* **Government Communication**: Official notices and forms

## Best Practices

### FAX Formatting

* Use clear, high-contrast documents
* Avoid small fonts (minimum 10pt recommended)
* Test document formatting before bulk sends
* Include cover page with contact information

### Delivery Optimization

* Send during business hours for better delivery rates
* Verify FAX numbers before sending
* Monitor delivery status and retry failed sends
* Use appropriate priority levels

### Security Considerations

* Encrypt sensitive documents before FAX transmission
* Use secure credential storage
* Log all FAX activity for audit trails
* Comply with industry regulations (HIPAA, etc.)
