Skip to main content

Python Object Wrapper for FileMaker Server XML Interface

Project description

PyFileMaker - Integrating FileMaker and Python

Old project urls:


  1. What is pyfilemaker2 ?
  2. Requirements
  3. How to install pyfilemaker2
  4. Documentation
  5. Changes

1. WHAT IS pyfilemaker2?

pyfilemaker2 is based, but largely rewritten, from PyFileMaker ( whose description is still valid:

PyFileMaker is a set of Python modules that makes it easy to access and modify
data stored in a FileMaker Pro/Server database. You can use it to query a FileMaker
database, but you can also use it to add data to a FileMaker database, you
can even use it to delete records and execute FileMaker scripts.

pyfilemaker2 implements the following additional features:

  • FM server responses can be streamed and parsed 'on the fly' during the streaming.
  • FM server responses can be automatically paginated as large dataset (>20k records) tend to trigger FMS and/or network timeouts.
  • meant to be thread safe, though I can't claim to be an expert on the subject...
  • More consistent and finer control on the way data types are cast when reading or writting FM records (in particular dates, datetimes and float objects)
  • python 3 compatible
  • improved test battery


At the time of the development (2021), pyfilemaker2 is using:


The test suite also requires


The code has been developped on Max OSX 10.15 and is used in production on debian jessie. Other plateforms have not been tested.

You will also need a FileMaker server with the XML enabled of course.


You can install from pypi using pip

$ pip install pyfilemaker2

4. DOC

There are no external docs but the function in the FmServer class have extensive docstring. Starts in particular with the file. Moreover an FmServer object is likely the unique thing one will need to import from this package.



  • BackCast now cast numbers correctly


  • Bugfix on import in


  • No longer support python2.7 as the future library was removed


  • Minor change in FmServer.get_file to allow downloading of badly formatted filenames.


  • changed the BackCast function so that query parameters may be bytestring


  • improving this readme

  • bug fix in the FmServer.fetched_records_number function

0.1.11: enforcing stream=True by default as FMS now requires it.

0.1.10: bug fix with the stream argument.


  • adding timezone support as FM datetime object are naive datetime

  • changed the way the options are passed to FmServer object so that a subclass with default parameters can be used.

0.1.6: bug fixes in do_find_query

Version 0.1

  • First release of the code

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyfilemaker2-0.2.3.tar.gz (29.2 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page