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

# List tasks

> List the tasks the caller can see, newest first by default. A task on a project is visible to the people who can see that project; any other task is visible to everyone in the organization. Filter by status, assignee, due date, the record a task is about, title, and when tasks were created or updated. Each task includes the caller's own reminder for it.



## OpenAPI

````yaml https://api.parley.so/openapi.json get /tasks
openapi: 3.1.1
info:
  title: Parley API
  version: 1.0.0
  description: >-
    Manage Parley's projects (matters or cases), accounts (client
    organizations), contacts (people), tasks, custom fields, notes, files,
    activity, automations, and skills. Records refer to each other as { type,
    id, name } references; writes take IDs. Errors are { error: { code, message,
    details } }, where code names what went wrong and each operation lists the
    codes it can return. In a query string, write a timestamp's offset as Z or
    %2B, because a raw + arrives as a space. The MCP server at /mcp offers the
    same data as a smaller set of tools.
servers:
  - url: https://api.parley.so/v1
security:
  - bearerAuth: []
tags:
  - name: Projects
    description: >-
      A project is a matter or case: it groups the files, notes, activity, and
      tasks for one engagement, and links to the accounts and contacts it
      involves.
  - name: Accounts
    description: >-
      An account is a client organization. Contacts belong to it, and projects
      link to it.
  - name: Contacts
    description: >-
      A contact is a person, optionally belonging to one account and linked to
      projects.
  - name: Tasks
    description: >-
      A task is a to-do with a status, assignee, and due date, optionally about
      one project, account, or contact.
  - name: Fields
    description: >-
      Custom fields defined for projects, accounts, contacts, or tasks. Records
      carry their values in fields, keyed by field name.
  - name: Notes
    description: >-
      Markdown notes on a project, account, or contact. Updates take the version
      you last read, so concurrent edits fail with 409 VERSION_CONFLICT instead
      of overwriting.
  - name: Files
    description: >-
      Files and folders of a project, account, contact, or intake, or the
      organization's Library. Add a file by creating an upload, PUTting its
      bytes, and adding the upload to a location.
  - name: Activity
    description: >-
      What happened across the organization or on one record: changes, links,
      notes, files, USCIS case updates, and synced emails and meetings. Each
      item's kind says which details it carries.
  - name: Sessions
    description: >-
      Conversations with Parley's assistant, from the web app, Word, Outlook,
      automation runs, and the API. Start one with a message, follow up or steer
      it while it works, and read its replies.
  - name: Automations
    description: >-
      Instructions Parley's assistant carries out on a schedule, as the person
      who created them, with nobody present.
  - name: Skills
    description: >-
      Reusable playbooks for Parley's assistant: a SKILL.md plus optional
      bundled documents, addressed by slug.
  - name: Users
    description: The people in your organization, and the caller.
paths:
  /tasks:
    get:
      tags:
        - Tasks
      summary: List tasks
      description: >-
        List the tasks the caller can see, newest first by default. A task on a
        project is visible to the people who can see that project; any other
        task is visible to everyone in the organization. Filter by status,
        assignee, due date, the record a task is about, title, and when tasks
        were created or updated. Each task includes the caller's own reminder
        for it.
      operationId: listTasks
      parameters:
        - name: search
          in: query
          schema:
            type: string
            minLength: 1
            description: >-
              Case-insensitive. Every word must match the title or a text custom
              field.
          allowEmptyValue: true
          allowReserved: true
        - name: statuses
          in: query
          schema:
            type: array
            minItems: 1
            items:
              enum:
                - todo
                - in_progress
                - done
                - cancelled
              type: string
              description: >-
                Where the task stands: todo, in_progress, done, or cancelled.
                done and cancelled close it.
            description: Only tasks whose status is one of these.
          style: form
          explode: true
          allowEmptyValue: true
          allowReserved: true
        - name: assigneeId
          in: query
          schema:
            type: string
            minLength: 1
            description: Only tasks assigned to the user with this ID.
          allowEmptyValue: true
          allowReserved: true
        - name: dueSince
          in: query
          schema:
            type: string
            format: date
            description: Only tasks due on or after this day, as YYYY-MM-DD.
          allowEmptyValue: true
          allowReserved: true
        - name: dueBefore
          in: query
          schema:
            type: string
            format: date
            description: Only tasks due before this day, as YYYY-MM-DD.
          allowEmptyValue: true
          allowReserved: true
        - name: projectId
          in: query
          schema:
            type: string
            minLength: 1
            description: Only tasks about this project.
          allowEmptyValue: true
          allowReserved: true
        - name: accountId
          in: query
          schema:
            type: string
            minLength: 1
            description: Only tasks about this account.
          allowEmptyValue: true
          allowReserved: true
        - name: contactId
          in: query
          schema:
            type: string
            minLength: 1
            description: Only tasks about this contact.
          allowEmptyValue: true
          allowReserved: true
        - name: createdSince
          in: query
          schema:
            type: string
            description: >-
              Only records created at or after this time. An ISO 8601 date
              (YYYY-MM-DD, read as UTC midnight) or date-time.
          allowEmptyValue: true
          allowReserved: true
        - name: createdBefore
          in: query
          schema:
            type: string
            description: >-
              Only records created before this time. An ISO 8601 date
              (YYYY-MM-DD, read as UTC midnight) or date-time.
          allowEmptyValue: true
          allowReserved: true
        - name: updatedSince
          in: query
          schema:
            type: string
            description: >-
              Only records last updated at or after this time. An ISO 8601 date
              (YYYY-MM-DD, read as UTC midnight) or date-time.
          allowEmptyValue: true
          allowReserved: true
        - name: updatedBefore
          in: query
          schema:
            type: string
            description: >-
              Only records last updated before this time. An ISO 8601 date
              (YYYY-MM-DD, read as UTC midnight) or date-time.
          allowEmptyValue: true
          allowReserved: true
        - name: sort
          in: query
          schema:
            enum:
              - title
              - '-title'
              - createdAt
              - '-createdAt'
              - updatedAt
              - '-updatedAt'
            type: string
            default: '-createdAt'
            description: >-
              Sort order: a field name, prefixed with - for descending. Defaults
              to -createdAt.
          allowEmptyValue: true
          allowReserved: true
        - name: cursor
          in: query
          schema:
            type: string
            minLength: 1
            description: >-
              Opaque cursor from nextCursor. Pass the same filters and sort.
              Omit for the first page.
          allowEmptyValue: true
          allowReserved: true
        - name: limit
          in: query
          schema:
            type: integer
            minimum: 1
            maximum: 250
            default: 50
            description: Maximum number of items to return.
          allowEmptyValue: true
          allowReserved: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/Task'
                  nextCursor:
                    anyOf:
                      - type: string
                      - type: 'null'
                    description: Cursor for the next page, or null on the last page.
                required:
                  - data
                  - nextCursor
        '400':
          description: The request was invalid. VALIDATION_FAILED, INVALID_CURSOR.
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/ValidationFailedError'
                  - $ref: '#/components/schemas/InvalidCursorError'
        '401':
          description: Missing or invalid credentials. UNAUTHORIZED.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedError'
        '403':
          description: You don't have permission. FORBIDDEN.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenError'
        '429':
          description: Too many requests, or a usage limit was reached. TOO_MANY_REQUESTS.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TooManyRequestsError'
components:
  schemas:
    Task:
      type: object
      properties:
        id:
          type: string
          minLength: 1
          description: The task ID.
        title:
          type: string
          minLength: 1
          maxLength: 500
          description: Task title.
        status:
          anyOf:
            - enum:
                - todo
                - in_progress
                - done
                - cancelled
              type: string
              description: >-
                Where the task stands: todo, in_progress, done, or cancelled.
                done and cancelled close it.
            - type: 'null'
          description: >-
            Where the task stands: todo, in_progress, done, or cancelled, or
            null when it has no status. done and cancelled close it.
        assignee:
          anyOf:
            - $ref: '#/components/schemas/UserRef'
            - type: 'null'
          description: The person the task is assigned to, or null.
        dueDate:
          anyOf:
            - type: string
              format: date
              description: The day the task is due, as YYYY-MM-DD.
            - type: 'null'
          description: The day the task is due, as YYYY-MM-DD, or null.
        description:
          anyOf:
            - type: string
            - type: 'null'
          description: Details, or null.
        linkedRecord:
          anyOf:
            - $ref: '#/components/schemas/RecordRef'
            - type: 'null'
          description: The project, account, or contact the task is about, or null.
        reminder:
          anyOf:
            - type: object
              properties:
                remindAt:
                  type: string
                  format: date-time
                  description: When Parley reminds you, through your notification settings.
                sentAt:
                  anyOf:
                    - type: string
                      format: date-time
                    - type: 'null'
                  description: When the reminder was sent, or null until then.
              required:
                - remindAt
                - sentAt
            - type: 'null'
          description: >-
            Your reminder for the task, or null. Reminders are personal: each
            person sees only their own.
        createdAt:
          type: string
          format: date-time
          description: When the task was created.
        updatedAt:
          type: string
          format: date-time
          description: >-
            When the task was last renamed or linked to a different record.
            Changes to its status, assignee, due date, description, field
            values, and reminders do not change it.
        fields:
          type: object
          propertyNames:
            type: string
          additionalProperties:
            anyOf:
              - type: string
              - type: number
              - type: boolean
              - type: array
                items:
                  type: string
              - type: object
                properties:
                  streetAddress:
                    anyOf:
                      - type: string
                      - type: 'null'
                  cityTown:
                    anyOf:
                      - type: string
                      - type: 'null'
                  state:
                    anyOf:
                      - type: string
                      - type: 'null'
                  country:
                    anyOf:
                      - type: string
                      - type: 'null'
                required:
                  - streetAddress
                  - cityTown
                  - state
                  - country
                description: A postal address. Each part is a string or null.
              - type: 'null'
          description: >-
            Custom field values, keyed by field name, with a key for every field
            defined for tasks (null when unset). The value's shape follows the
            field's type. Status, assignee, due date, and description are
            properties of the task, not fields.
      required:
        - id
        - title
        - status
        - assignee
        - dueDate
        - description
        - linkedRecord
        - reminder
        - createdAt
        - updatedAt
        - fields
    ValidationFailedError:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              const: VALIDATION_FAILED
            message:
              type: string
              examples:
                - The request is invalid.
            details:
              type: object
              properties:
                issues:
                  type: array
                  items:
                    type: object
                    properties:
                      path:
                        type: string
                        description: >-
                          Where the problem is, as a dotted path into the input
                          such as accountIds.add.0 or reminder.remindAt. Empty
                          for the input as a whole.
                      message:
                        type: string
                        description: What is wrong with the value.
                    required:
                      - path
                      - message
                  description: Each problem with the input.
              required:
                - issues
          required:
            - code
            - message
            - details
      required:
        - error
    InvalidCursorError:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              const: INVALID_CURSOR
            message:
              type: string
              examples:
                - >-
                  The cursor is invalid, or was issued for different filters or
                  sort.
          required:
            - code
            - message
      required:
        - error
    UnauthorizedError:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              const: UNAUTHORIZED
            message:
              type: string
              examples:
                - Missing or invalid credentials.
          required:
            - code
            - message
      required:
        - error
    ForbiddenError:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              const: FORBIDDEN
            message:
              type: string
              examples:
                - You don't have permission to do this.
          required:
            - code
            - message
      required:
        - error
    TooManyRequestsError:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              const: TOO_MANY_REQUESTS
            message:
              type: string
              examples:
                - Too many requests.
          required:
            - code
            - message
      required:
        - error
    UserRef:
      type: object
      properties:
        id:
          type: string
          description: The user's ID.
        name:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The user's full name, or null when it is unknown, as for someone who
            has left the organization.
        email:
          anyOf:
            - type: string
            - type: 'null'
          description: The user's email address, or null when it is unknown.
      required:
        - id
        - name
        - email
      description: A reference to a person in the organization.
    RecordRef:
      type: object
      properties:
        type:
          enum:
            - project
            - account
            - contact
          type: string
          description: 'The kind of record: project, account, or contact.'
        id:
          type: string
          description: Its ID.
        name:
          type: string
          description: >-
            The record's name. A contact's is its first and last name, or an
            email address when it has no name.
      required:
        - type
        - id
        - name
      description: A reference to a project, account, or contact.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: A Parley API key.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.