# List Received Faxes

> Purpose: List one page of received eFax records without changing their read state. Use when: Find fax IDs before Read Fax Details or Download Fax; requires the organization's saved eFax connection. Inputs: Optional offset integer >=0 (default 0), limit integer 1–100 (default 100), min_completed_timestamp and max_completed_timestamp as timestamps with a timezone. Blank filters are omitted. Outputs: faxes:list of records with fax_id UUID strings and optional details; count:integer, has_more:boolean, next_offset:integer|null; success:boolean, error:string|null, failure_category:null. The runner wraps successful output under default. No fax titles or file bytes are returned. Success: success=true and error=null; an empty faxes list is valid. Follow next_offset while has_more=true; a full final page can require one empty request. Failure: success=false with a safe error; no partial page. Login and safe reads try transient errors up to three times with exponential backoff and jitter. Check inputs, connection, and mailbox access. Effects: Read-only in the current organization's mailbox. Includes previously downloaded faxes so imports can retry. Examples: {"limit":1} can return {"faxes":[],"count":0,"has_more":false,"next_offset":null,"success":true,"error":null,"failure_category":null} under default.

Source: [https://genhealth.ai/docs/workflows/integrations/e-fax/efax_list_faxes](https://genhealth.ai/docs/workflows/integrations/e-fax/efax_list_faxes)

Integration: [eFax](https://genhealth.ai/docs/workflows/integrations/e-fax.md)

- Handler: `efax_list_faxes`

- Connection type: `efax`

## Use in a workflow

Copy this discovered node config, fill params from the input contract, and validate the complete graph. Integration results are available as {{node_id.default.field}}. Check business success before dependent writes; completion alone does not prove business success.

```json

{
  "_group": "eFax",
  "params": {
    "limit": 100,
    "offset": 0
  },
  "handler": "efax_list_faxes"
}

```

[Action contracts](https://genhealth.ai/docs/workflows/action-contracts.md) · [Run recovery](https://genhealth.ai/docs/workflows/operations.md)

## Inputs

- `offset` — Offset (number)
  Zero-based page offset. Use next_offset while has_more is true. Defaults to 0.
  Default: `0`
- `limit` — Limit (number)
  Maximum faxes per page, an integer from 1 to 100. Defaults to 100.
  Default: `100`
- `min_completed_timestamp` — Min Completed Timestamp (text)
  Optional earliest completion timestamp with a timezone. Blank or null is omitted.
- `max_completed_timestamp` — Max Completed Timestamp (text)
  Optional latest completion timestamp with a timezone. Blank or null is omitted.

## Outputs

- `faxes` — Faxes
- `count` — Count
- `has_more` — Has More
- `next_offset` — Next Offset
- `success` — Success
- `error` — Error

Output schema completeness: `reviewed_partial`

## Safety

- External effect: `read`
- Confirmation recommended: no
- Retry safe: yes
- Dry run supported: no

## Schemas

These schemas are first-pass authoring guidance. Runtime validation remains authoritative.

### Input schema

```json
{
  "type": "object",
  "properties": {
    "limit": {
      "type": "integer",
      "default": 100,
      "maximum": 100,
      "minimum": 1,
      "description": "Maximum faxes per page, an integer from 1 to 100. Defaults to 100.",
      "x-workflow-field-type": "number"
    },
    "offset": {
      "type": "integer",
      "default": 0,
      "minimum": 0,
      "description": "Zero-based page offset. Use next_offset while has_more is true. Defaults to 0.",
      "x-workflow-field-type": "number"
    },
    "max_completed_timestamp": {
      "type": [
        "string",
        "null"
      ],
      "anyOf": [
        {
          "type": "null"
        },
        {
          "const": ""
        },
        {
          "type": "string",
          "format": "date-time"
        }
      ],
      "description": "Optional latest completion timestamp with a timezone. Blank or null is omitted.",
      "x-workflow-field-type": "text"
    },
    "min_completed_timestamp": {
      "type": [
        "string",
        "null"
      ],
      "anyOf": [
        {
          "type": "null"
        },
        {
          "const": ""
        },
        {
          "type": "string",
          "format": "date-time"
        }
      ],
      "description": "Optional earliest completion timestamp with a timezone. Blank or null is omitted.",
      "x-workflow-field-type": "text"
    }
  },
  "additionalProperties": false
}
```

### Output schema

```json
{
  "type": "object",
  "properties": {
    "count": {
      "type": "integer",
      "minimum": 0
    },
    "error": {
      "type": [
        "string",
        "null"
      ]
    },
    "faxes": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "success": {
      "type": "boolean"
    },
    "has_more": {
      "type": "boolean"
    },
    "next_offset": {
      "type": [
        "integer",
        "null"
      ]
    }
  },
  "additionalProperties": true
}
```
