A Python client for the Templafy API using openapi-python-client for type-safe, modern Python API access.
This package provides a Python client for the Templafy API, generated from the OpenAPI specification.
Install the package using uv:
uv syncOr using pip:
pip install .from templafy import Client
# Create a client instance
client = Client(base_url="https://api.templafy.com")
# Make API calls
# Example: Get user information
response = client.get_user(user_id="123")
print(response)For authenticated requests:
from templafy import AuthenticatedClient
# Create an authenticated client
client = AuthenticatedClient(
base_url="https://api.templafy.com",
token="your-api-token"
)
# Use the client for authenticated endpoints
response = client.get_secure_data()The client supports async operations:
import asyncio
from templafy import Client
async def main():
client = Client(base_url="https://api.templafy.com")
response = await client.get_user_async(user_id="123")
print(response)
asyncio.run(main())The client provides methods for all endpoints defined in the OpenAPI specification. Refer to the generated code in src/templafy/ for detailed method signatures and models.
src/templafy/
├── client.py # Base Client and AuthenticatedClient classes
├── errors.py # Custom exception classes
├── types.py # Common type definitions
├── api/ # API endpoint implementations
│ ├── __init__.py
│ ├── data_source_fields/ # Data source field endpoints
│ ├── data_source_item_fields/ # Data source item field endpoints
│ ├── data_source_items/ # Data source item endpoints
│ ├── data_sources/ # Data source endpoints
│ ├── documents/ # Document endpoints
│ ├── email_elements/ # Email element endpoints
│ ├── folders/ # Folder endpoints
│ ├── images/ # Image endpoints
│ ├── libraries/ # Library endpoints
│ ├── links/ # Link endpoints
│ ├── pdfs/ # PDF endpoints
│ ├── presentations/ # Presentation endpoints
│ ├── slide_elements/ # Slide element endpoints
│ ├── slides/ # Slide endpoints
│ ├── spaces/ # Space endpoints
│ ├── spreadsheets/ # Spreadsheet endpoints
│ └── text_elements/ # Text element endpoints
└── models/ # Pydantic models for all API schemas
├── __init__.py
├── space.py # Space-related models
├── library.py # Library-related models
├── document.py # Document-related models
├── folder.py # Folder-related models
├── image.py # Image-related models
├── slide.py # Slide-related models
└── ... (additional model files)
| API Group | API Endpoint Name | Description |
|---|---|---|
| DataSourceFields | get_data_sources_data_source_id_fields_field_id | Gets an existing data source field. |
| DataSourceFields | patch_data_sources_data_source_id_fields_field_id | Updates an existing data source field. |
| DataSourceFields | delete_data_sources_data_source_id_fields_field_id | Deletes a data source field. |
| DataSourceFields | post_data_sources_data_source_id_fields | Creates a new data source field. |
| DataSourceItemFields | put_data_sources_data_source_id_items_item_id_fields_field_id | Updates a single field on a data source item. |
| DataSourceItemFields | delete_data_sources_data_source_id_items_item_id_fields_field_id | Deletes an existing field from a data source item. |
| DataSourceItems | get_data_sources_data_source_id_items | Lists all existing data source items. |
| DataSourceItems | post_data_sources_data_source_id_items | Creates a new data source item. |
| DataSourceItems | get_data_sources_data_source_id_items_item_id | Gets an existing data source item. |
| DataSourceItems | patch_data_sources_data_source_id_items_item_id | Updates data source item. |
| DataSourceItems | delete_data_sources_data_source_id_items_item_id | Deletes an existing data source item. |
| DataSources | get_data_sources | Lists all existing data sources. |
| DataSources | post_data_sources | Creates a new data source. |
| DataSources | get_data_sources_id | Gets an existing data source. |
| DataSources | patch_data_sources_id | Updates an existing data source. |
| DataSources | delete_data_sources_id | Deletes an existing data source. |
| Documents | post_libraries_space_id_documents_assets_asset_id_generate | Generates a document from a template and returns information about the file, which includes the download url. |
| Documents | get_libraries_space_id_documents_folders_folder_id_assets | Lists all document templates in the folder. |
| Documents | post_libraries_space_id_documents_folders_folder_id_assets | Uploads the document template. |
| Documents | get_libraries_space_id_documents_assets_asset_id | Returns the document template by the identifier. |
| Documents | patch_libraries_space_id_documents_assets_asset_id | Updates the document template. |
| Documents | delete_libraries_space_id_documents_assets_asset_id | Deletes the document template by the identifier. |
| EmailElements | get_libraries_space_id_email_elements_folders_folder_id_assets | Lists all email elements in the folder. |
| EmailElements | post_libraries_space_id_email_elements_folders_folder_id_assets | Uploads the email element file. |
| EmailElements | get_libraries_space_id_email_elements_assets_asset_id | Returns the email element by the identifier. |
| EmailElements | patch_libraries_space_id_email_elements_assets_asset_id | Updates the email element asset. |
| EmailElements | delete_libraries_space_id_email_elements_assets_asset_id | Deletes the email element by the identifier. |
| Folders | get_libraries_space_id_library_type_folders_folder_id | Returns the folder by the identifier. |
| Folders | patch_libraries_space_id_library_type_folders_folder_id | Updates the folder. |
| Folders | delete_libraries_space_id_library_type_folders_folder_id | Deletes the folder by the identifier |
| Folders | get_libraries_space_id_library_type_folders_folder_id_folders | Lists all direct folders in the folder. The result does not include subfolders. |
| Folders | post_libraries_space_id_library_type_folders_folder_id_folders | Creates a folder inside the specified folder. |
| Images | get_libraries_space_id_images_folders_folder_id_assets | Lists all image assets in the folder. |
| Images | post_libraries_space_id_images_folders_folder_id_assets | Uploads the image file. |
| Images | get_libraries_space_id_images_assets_asset_id | Returns the image by the identifier. |
| Images | patch_libraries_space_id_images_assets_asset_id | Updates the image asset. |
| Images | delete_libraries_space_id_images_assets_asset_id | Deletes the image by the identifier. |
| Libraries | get_libraries | Lists all libraries from all spaces. |
| Libraries | get_libraries_space_id_library_type | Returns the library by the space identifier and library type. |
| Links | get_libraries_space_id_links_folders_folder_id_assets | Lists all link assets in the folder. |
| Links | post_libraries_space_id_links_folders_folder_id_assets | Creates the link asset. |
| Links | get_libraries_space_id_links_assets_asset_id | Returns the link asset by the identifier. |
| Links | patch_libraries_space_id_links_assets_asset_id | Updates the link asset. |
| Links | delete_libraries_space_id_links_assets_asset_id | Deletes the link by the identifier. |
| Pdfs | get_libraries_space_id_pdfs_folders_folder_id_assets | Lists all pdf assets in the folder. |
| Pdfs | post_libraries_space_id_pdfs_folders_folder_id_assets | Uploads the pdf file. |
| Pdfs | get_libraries_space_id_pdfs_assets_asset_id | Returns the pdf by the identifier. |
| Pdfs | patch_libraries_space_id_pdfs_assets_asset_id | Updates the pdf asset. |
| Pdfs | delete_libraries_space_id_pdfs_assets_asset_id | Deletes the pdf by the identifier. |
| Presentations | post_libraries_space_id_presentations_assets_asset_id_generate | Generates a presentation from a template and returns information about the file, which includes the download url. |
| Presentations | get_libraries_space_id_presentations_folders_folder_id_assets | Lists all presentation templates along with their slides in the folder. |
| Presentations | post_libraries_space_id_presentations_folders_folder_id_assets | Uploads the presentation template. |
| Presentations | get_libraries_space_id_presentations_assets_asset_id | Returns the presentation template or presentation slide by the identifier. |
| Presentations | patch_libraries_space_id_presentations_assets_asset_id | Updates the presentation template. |
| Presentations | delete_libraries_space_id_presentations_assets_asset_id | Deletes the presentation template by the identifier. |
| SlideElements | get_libraries_space_id_slide_elements_folders_folder_id_assets | Lists all slide element decks along with slide elements in the folder. |
| SlideElements | post_libraries_space_id_slide_elements_folders_folder_id_assets | Uploads the slide element file. |
| SlideElements | get_libraries_space_id_slide_elements_assets_asset_id | Returns the slide element deck or slide element by the identifier. |
| SlideElements | patch_libraries_space_id_slide_elements_assets_asset_id | Updates the slide element asset. |
| SlideElements | delete_libraries_space_id_slide_elements_assets_asset_id | Deletes the slide element deck by the identifier. |
| Slides | get_libraries_space_id_slides_folders_folder_id_assets | Lists all slide decks along with slides in the folder. |
| Slides | post_libraries_space_id_slides_folders_folder_id_assets | Uploads the slide file. |
| Slides | get_libraries_space_id_slides_assets_asset_id | Returns the slide deck or slide by the identifier. |
| Slides | patch_libraries_space_id_slides_assets_asset_id | Updates the slide asset. |
| Slides | delete_libraries_space_id_slides_assets_asset_id | Deletes the slide deck by the identifier. |
| Spaces | get_spaces | Lists all existing active spaces. |
| Spreadsheets | post_libraries_space_id_spreadsheets_assets_asset_id_generate | Generates a spreadsheet from a template and returns information about the file, which includes the download url. |
| Spreadsheets | get_libraries_space_id_spreadsheets_folders_folder_id_assets | Lists all spreadsheet templates in the folder. |
| Spreadsheets | post_libraries_space_id_spreadsheets_folders_folder_id_assets | Uploads the spreadsheet template. |
| Spreadsheets | get_libraries_space_id_spreadsheets_assets_asset_id | Returns the spreadsheet template by the identifier. |
| Spreadsheets | patch_libraries_space_id_spreadsheets_assets_asset_id | Updates the spreadsheet template. |
| Spreadsheets | delete_libraries_space_id_spreadsheets_assets_asset_id | Deletes the spreadsheet template by the identifier. |
| TextElements | post_libraries_space_id_text_elements_assets_asset_id_generate | Generates a text element from a template and returns information about the file, which includes the download url. |
| TextElements | get_libraries_space_id_text_elements_folders_folder_id_assets | Lists all text elements in the folder. |
| TextElements | post_libraries_space_id_text_elements_folders_folder_id_assets | Uploads the text element file. |
| TextElements | get_libraries_space_id_text_elements_assets_asset_id | Returns the text element by the identifier. |
| TextElements | patch_libraries_space_id_text_elements_assets_asset_id | Updates the text element asset. |
| TextElements | delete_libraries_space_id_text_elements_assets_asset_id | Deletes the text element by the identifier. |
This client is generated from assets/openapi.json using openapi-python-client. To regenerate:
- Update the OpenAPI spec in
assets/openapi.json - Run the generation script (see project tasks)
See LICENSE file for details.