Python Integration Patterns for the Data API

Beginner

Connect Python scripts and applications to FileMaker using the Data API, covering requests-based clients, context managers, and pandas integration.

What you'll learn

  • How to authenticate and make requests with the Python requests library
  • How to implement a context manager for clean session lifecycle
  • How to convert Data API responses into pandas DataFrames
  • How to handle FileMaker-specific error responses in Python

Python is a common language for data processing, automation, and machine learning pipelines. The FileMaker Data API is straightforward to consume with the requests library, and a context-manager pattern ensures sessions are always cleaned up. From there, feeding data into pandas DataFrames opens FileMaker data to the full Python data science ecosystem.

1/4
1

Basic authentication and find

Use the requests library. Authenticate with Basic auth to get a token, then pass it as a Bearer token for subsequent calls.

FileMaker Script
import requests
import base64

host = "https://your-server.com"
db = "CRM"
user = "admin"
password = "secret"

# Login
creds = base64.b64encode(f"{user}:{password}".encode()).decode()
resp = requests.post(
    f"{host}/fmi/data/v1/databases/{db}/sessions",
    headers={"Authorization": f"Basic {creds}", "Content-Type": "application/json"},
    json={}
)
token = resp.json()["response"]["token"]

# Find
find_resp = requests.post(
    f"{host}/fmi/data/v1/databases/{db}/layouts/Contacts/_find",
    headers={"Authorization": f"Bearer {token}"},
    json={"query": [{"Status": "Active"}]}
)
records = find_resp.json()["response"]["data"]

Sign in to track your progress and pick up where you left off.

Sign in to FM Dojo