Skip to main content

Access FileMaker(tm) Server Databases

Project description

Fmkr is a Python library to access FileMaker(tm) Server 8 Advanced databases via the XML publishing interface.

“FileMaker” is a registered trademark of Claris International Inc.

Author:

Christoph Gohlke

License:

BSD-3-Clause

Version:

2026.1.6

Requirements

This revision was tested with the following requirements and dependencies (other versions may work):

Revisions

2026.1.6

  • Improve code quality.

  • Support Python 3.12, 3.13, and 3.14.

  • Drop support for Python 3.8, 3.9, and 3.10.

2022.9.28

  • Convert docstrings to Google style with Sphinx directives.

2022.3.24

  • Add type hints.

  • Improve string representations of objects.

  • Add immutable sequence interface to FMPXMLResult.

  • Drop support for Python 3.6 and 3.7 (NEP 29).

2021.3.6

  • Update copyright and formatting.

2020.1.1

  • Drop support for Python 3.5.

  • Update copyright.

2018.8.15

  • Move fmkr.py into fmkr package.

2018.5.25

  • Use lxml instead of minidom to parse FMPXMLResult.

  • Improve string representations of FMPXMLResult and FMField.

  • Update error codes.

  • Drop support for Python 2.

2006.10.30

  • Initial release.

References

  1. http://www.filemaker.com/downloads/documentation/fmsa8_custom_web_guide.pdf

Examples

>>> from fmkr import FM, FMError
>>> fmi = FM('filemaker.domain.com', 80, 'http')
>>> fmi.set_db_data('database', 'layout', maxret=5)
>>> fmi.set_db_password('fmuser', 'password')
>>> # create a new record
>>> fmi.add_db_param('FIRST', 'John')
>>> fmi.add_db_param('LAST', 'Doe')
>>> fmi.fm_new()
>>> # find and sort records
>>> fmi.add_db_param('LAST', 'Doe', 'bw')
>>> fmi.add_sort_param('LAST', 'ascend', 1)
>>> fmi.add_sort_param('FIRST', 'ascend', 2)
>>> result = fmi.fm_find()
>>> for record in result:
...     print(record['FIRST'], record['LAST'])
...
John Doe
>>> # delete record
>>> recid = result[0]['RECORDID']
>>> fmi.set_record_id(recid)
>>> fmi.fm_delete()
>>> # catch an exception
>>> try:
...     fmi.add_db_param('LAST', 'Doe', 'cn')
...     fmi.fm_find()
... except FMError as exc:
...     print(exc)
...
FileMaker Error 401: No records match the request

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

fmkr-2026.1.6.tar.gz (15.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fmkr-2026.1.6-py3-none-any.whl (14.6 kB view details)

Uploaded Python 3

File details

Details for the file fmkr-2026.1.6.tar.gz.

File metadata

  • Download URL: fmkr-2026.1.6.tar.gz
  • Upload date:
  • Size: 15.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.11

File hashes

Hashes for fmkr-2026.1.6.tar.gz
Algorithm Hash digest
SHA256 9b8ae46314670fc5a92275bfb3f08760e3ce6a041c5af5f875ce2d48779d2f8a
MD5 cbf8f002a9beb9c56c3e1771d2c00e44
BLAKE2b-256 017b70e14e0a206b5fd59005d2e5d02a08f46b44e2f48c4797c6e792c8e65e7e

See more details on using hashes here.

File details

Details for the file fmkr-2026.1.6-py3-none-any.whl.

File metadata

  • Download URL: fmkr-2026.1.6-py3-none-any.whl
  • Upload date:
  • Size: 14.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.11

File hashes

Hashes for fmkr-2026.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 2b5dc17c8048e9701a0f40df2930a111b3fe7e2fbd263f00d6008abae63dd99d
MD5 407328bf1fdf55b5cbcc5f1ef2d7e589
BLAKE2b-256 253fa971830887de5a44d82ff514ab0150ffd10d2bb5d2c3c3fa1326316b7e53

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page