Skip to main content

Official Python SDK for the Ottimate API — AP automation, invoice processing, and payment management

Project description

Ottimate Python SDK

Official Python SDK for the Ottimate API.

Installation

pip install ottimate-sdk

Requirements

  • Python 3.8 or higher

Configuration

Create a .env file in your project root with your Ottimate credentials:

OTTIMATE_API_KEY="your_api_key"
OTTIMATE_BASE_URL="your_base_url"
OTTIMATE_CLIENT_ID="your_client_id"
OTTIMATE_CLIENT_SECRET="your_client_secret"
OTTIMATE_COMPANY_ID="your_company_id"
OTTIMATE_LOCATION_ID="your_location_id"

Authentication

The Ottimate API uses OAuth 2.0. Authentication is a two-step process:

  1. Create a temporary client to obtain an OAuth access token
  2. Initialize the main client using the access token
import httpx
from ottimate import Ottimate

# Step 1: Get an access token
auth_client = Ottimate(
    base_url=base_url,
    api_key=api_key,
    httpx_client=httpx.Client(timeout=60, follow_redirects=True)
)

token_response = auth_client.oauth.post_oauth_token(
    client_id=client_id,
    client_secret=client_secret,
    scope="accounts.can_access_dashboard"
)
access_token = token_response.access_token

# Step 2: Initialize the authenticated client
client = Ottimate(
    base_url=base_url,
    api_key=api_key,
    api_version="1.0.0",
    headers={"Authorization": f"Bearer {access_token}"},
    httpx_client=httpx.Client(timeout=60, follow_redirects=True)
)

Full Example

import os
import httpx
from dotenv import load_dotenv
from ottimate import Ottimate

load_dotenv()

base_url = os.environ["OTTIMATE_BASE_URL"]
api_key = os.environ["OTTIMATE_API_KEY"]
client_id = os.environ["OTTIMATE_CLIENT_ID"]
client_secret = os.environ["OTTIMATE_CLIENT_SECRET"]

# Obtain access token
auth_client = Ottimate(
    base_url=base_url,
    api_key=api_key,
    httpx_client=httpx.Client(timeout=60, follow_redirects=True)
)

token_response = auth_client.oauth.post_oauth_token(
    client_id=client_id,
    client_secret=client_secret,
    scope="accounts.can_access_dashboard"
)

# Create authenticated client
client = Ottimate(
    base_url=base_url,
    api_key=api_key,
    api_version="1.0.0",
    headers={"Authorization": f"Bearer {token_response.access_token}"},
    httpx_client=httpx.Client(timeout=60, follow_redirects=True)
)

Version

0.1.4

Support

For API documentation and guides, visit the Ottimate Developer Docs.

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

ottimate_sdk-0.1.4.tar.gz (124.6 kB view details)

Uploaded Source

Built Distribution

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

ottimate_sdk-0.1.4-py3-none-any.whl (264.6 kB view details)

Uploaded Python 3

File details

Details for the file ottimate_sdk-0.1.4.tar.gz.

File metadata

  • Download URL: ottimate_sdk-0.1.4.tar.gz
  • Upload date:
  • Size: 124.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ottimate_sdk-0.1.4.tar.gz
Algorithm Hash digest
SHA256 e3cb746f6d2fb3ca8242a007afc0480e42187856e239a207a7e4f4d6058eb3b9
MD5 ee98fda58f23e80931e0e34a21de87e2
BLAKE2b-256 8633e8a5b30eaf11c49ec1c8c452c4d889557ce0e59688229d87747be2b837bb

See more details on using hashes here.

Provenance

The following attestation bundles were made for ottimate_sdk-0.1.4.tar.gz:

Publisher: generate-python-sdk.yml on plateiq/fern-docs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ottimate_sdk-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: ottimate_sdk-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 264.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ottimate_sdk-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 3cc20dd727d91a8de14a4225b901e905d95cd4f1cbb0295230aef3b94bdcaacc
MD5 25cd0ceeeb0f776196f7ece44e296265
BLAKE2b-256 de9fe1d0c91e2ce3a8cfb266b4d941881d947fd06d30df297143f8d7cd3cb265

See more details on using hashes here.

Provenance

The following attestation bundles were made for ottimate_sdk-0.1.4-py3-none-any.whl:

Publisher: generate-python-sdk.yml on plateiq/fern-docs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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