Skip to main content

lockally

The lockally control plane lets integrators and direct customers manage everything except actual mail data flow (which uses standard JMAP / IMAP / SMTP-submission against the data plane endpoints).

Authentication. All /v1/* endpoints require a Bearer API key in the Authorization header. Keys are formatted lk_live_<8-char-prefix>_<32-char-secret>. Generate the first key for a tenant via cmd/seed; subsequent keys via POST /v1/api-keys.

Errors. Failures return RFC 9457 application/problem+json documents.

Scopes. Each endpoint requires a specific scope on the presented key. Insufficient scope returns 403 with the required scope name in detail.

This Python package is automatically generated by the OpenAPI Generator project:

  • API version: 0.1.0
  • Package version: 0.1.0
  • Generator version: 7.23.0
  • Build package: org.openapitools.codegen.languages.PythonClientCodegen

Requirements.

Python 3.10+

Installation & Usage

pip install

If the python package is hosted on a repository, you can install directly using:

pip install git+https://github.com/GIT_USER_ID/GIT_REPO_ID.git

(you may need to run pip with root permission: sudo pip install git+https://github.com/GIT_USER_ID/GIT_REPO_ID.git)

Then import the package:

import lockally

Setuptools

Install via Setuptools.

python setup.py install --user

(or sudo python setup.py install to install the package for all users)

Then import the package:

import lockally

Tests

Execute pytest to run the tests.

Getting Started

Please follow the installation procedure and then run the following:

import lockally
from lockally.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.lockally.com
# See configuration.py for a list of all supported configuration parameters.
configuration = lockally.Configuration(
    host = "https://api.lockally.com"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure Bearer authorization (lk_live_<prefix>_<secret>): bearerAuth
configuration = lockally.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)


# Enter a context with an instance of the API client
with lockally.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = lockally.AddOnsApi(api_client)
    name = 'name_example' # str | Add-on key

    try:
        # Activate an add-on
        api_response = api_instance.activate_add_on(name)
        print("The response of AddOnsApi->activate_add_on:\n")
        pprint(api_response)
    except ApiException as e:
        print("Exception when calling AddOnsApi->activate_add_on: %s\n" % e)

Documentation for API Endpoints

All URIs are relative to https://api.lockally.com

Class Method HTTP request Description
AddOnsApi activate_add_on POST /v1/add-ons/{name}/activate Activate an add-on
AddOnsApi cancel_add_on POST /v1/add-ons/{name}/cancel Cancel an add-on
AddOnsApi get_add_on_status GET /v1/add-ons/{name} Get add-on status
AddOnsApi list_add_ons GET /v1/add-ons List add-ons
AdminApi v1_admin_login_post POST /v1/admin/login Tenant-admin email+password login
AdminApi v1_admin_logout_post POST /v1/admin/logout Invalidate the current admin session
AdminApi v1_admin_me_get GET /v1/admin/me Get the current admin + tenant
AdminsApi v1_admins_get GET /v1/admins List tenant admins
AdminsApi v1_admins_id_delete DELETE /v1/admins/{id} Delete an admin
AdminsApi v1_admins_id_patch PATCH /v1/admins/{id} Update an admin
AdminsApi v1_admins_post POST /v1/admins Invite a new admin
AgentsApi v1_api_keys_key_id_mailboxes_get GET /v1/api-keys/{keyID}/mailboxes List a key's mailbox grants
AgentsApi v1_api_keys_key_id_mailboxes_mailbox_id_delete DELETE /v1/api-keys/{keyID}/mailboxes/{mailboxID} Revoke a mailbox grant
AgentsApi v1_api_keys_key_id_mailboxes_post POST /v1/api-keys/{keyID}/mailboxes Grant a mailbox to a key
AgentsApi v1_auth_whoami_get GET /v1/auth/whoami Introspect the calling credentials
AgentsApi v1_contacts_lookup_get GET /v1/contacts/lookup Who is this sender?
AgentsApi v1_inboxes_get GET /v1/inboxes List granted inboxes
AgentsApi v1_inboxes_mailbox_messages_post POST /v1/inboxes/{mailbox}/messages Start a new conversation (agent stream)
AgentsApi v1_inboxes_mailbox_threads_get GET /v1/inboxes/{mailbox}/threads List conversation threads
AgentsApi v1_threads_thread_id_get GET /v1/threads/{threadID} Get a whole conversation
AgentsApi v1_threads_thread_id_messages_message_id_attachments_idx_get GET /v1/threads/{threadID}/messages/{messageID}/attachments/{idx} Download an attachment
AgentsApi v1_threads_thread_id_messages_message_id_get GET /v1/threads/{threadID}/messages/{messageID} Get one message with body
AgentsApi v1_threads_thread_id_messages_message_id_read_post POST /v1/threads/{threadID}/messages/{messageID}/read Mark read/unread
AgentsApi v1_threads_thread_id_reply_post POST /v1/threads/{threadID}/reply Reply in-thread (agent stream)
AiApi v1_ai_config_get GET /v1/ai-config Read the tenant's AI configuration
AiApi v1_ai_config_put PUT /v1/ai-config Configure the AI tier
AiApi v1_billing_ai_units_checkout_post POST /v1/billing/ai-units/checkout Buy prepaid AI units
AiApi v1_threads_thread_id_classify_post POST /v1/threads/{threadID}/classify LLM-classify a thread
AliasesApi v1_aliases_address_delete DELETE /v1/aliases/{address} Delete an alias
AliasesApi v1_aliases_get GET /v1/aliases List aliases
AliasesApi v1_aliases_post POST /v1/aliases Create an alias
ApiKeysApi v1_api_keys_get GET /v1/api-keys List API keys
ApiKeysApi v1_api_keys_id_delete DELETE /v1/api-keys/{id} Revoke an API key
ApiKeysApi v1_api_keys_post POST /v1/api-keys Create an API key
BillingApi create_billing_checkout POST /v1/billing/checkout Create a plan checkout session
BillingApi create_units_checkout POST /v1/billing/units/checkout Create a send-units checkout session
BillingApi get_billing GET /v1/billing Get billing status
CalendarsApi add_calendar_member POST /v1/calendars/{id}/members Add a member to a calendar
CalendarsApi create_calendar POST /v1/calendars Create a calendar
CalendarsApi create_calendar_event POST /v1/calendars/{id}/events Create an event in a calendar
CalendarsApi create_calendar_integration POST /v1/calendar-integrations Create a calendar integration
CalendarsApi delete_calendar DELETE /v1/calendars/{id} Delete a calendar
CalendarsApi delete_calendar_event DELETE /v1/calendars/{id}/events/{eventId} Delete a calendar event
CalendarsApi delete_calendar_integration DELETE /v1/calendar-integrations/{id} Delete a calendar integration
CalendarsApi get_calendar GET /v1/calendars/{id} Get a calendar
CalendarsApi get_calendar_policies GET /v1/calendar-policies Get calendar policies
CalendarsApi get_calendar_security GET /v1/calendar-security Get calendar security overview
CalendarsApi list_calendar_events GET /v1/calendars/{id}/events List events in a calendar
CalendarsApi list_calendar_integrations GET /v1/calendar-integrations List calendar integrations
CalendarsApi list_calendar_members GET /v1/calendars/{id}/members List calendar members
CalendarsApi list_calendars GET /v1/calendars List calendars
CalendarsApi remove_calendar_member DELETE /v1/calendars/{id}/members/{memberId} Remove a member from a calendar
CalendarsApi sync_calendar_integration POST /v1/calendar-integrations/{id}/sync Trigger sync for a calendar integration
CalendarsApi update_calendar PATCH /v1/calendars/{id} Update a calendar
CalendarsApi update_calendar_event PATCH /v1/calendars/{id}/events/{eventId} Update a calendar event
CalendarsApi update_calendar_integration PATCH /v1/calendar-integrations/{id} Update a calendar integration
CalendarsApi update_calendar_member PATCH /v1/calendars/{id}/members/{memberId} Update a calendar member's role
CalendarsApi update_calendar_policies PATCH /v1/calendar-policies Update calendar policies
ContactListsApi add_contact_list_member POST /v1/contact-lists/{id}/members Add a member to a contact list
ContactListsApi create_contact_list POST /v1/contact-lists Create a contact list
ContactListsApi delete_contact_list DELETE /v1/contact-lists/{id} Delete a contact list
ContactListsApi get_contact_list GET /v1/contact-lists/{id} Get a contact list with members
ContactListsApi list_contact_lists GET /v1/contact-lists List contact lists
ContactListsApi remove_contact_list_member DELETE /v1/contact-lists/{id}/members/{contactId} Remove a member from a contact list
ContactListsApi update_contact_list PATCH /v1/contact-lists/{id} Update a contact list
ContactsApi create_contact POST /v1/contacts Create a contact
ContactsApi delete_contact DELETE /v1/contacts/{id} Delete a contact
ContactsApi get_contact GET /v1/contacts/{id} Get a contact
ContactsApi get_contact_lists GET /v1/contacts/{id}/lists Get lists a contact belongs to
ContactsApi list_contacts GET /v1/contacts List contacts
ContactsApi update_contact PATCH /v1/contacts/{id} Update a contact
DashboardApi get_audit_summary GET /v1/audit-summary Audit summary for the dashboard
DashboardApi get_domains_status GET /v1/domains/status Domain health status for the dashboard
DashboardApi get_integrations_summary GET /v1/integrations-summary Integrations summary for the dashboard
DashboardApi get_security GET /v1/security Security overview for the dashboard
DashboardApi get_storage GET /v1/storage Storage usage for the dashboard
DashboardApi get_tenant_health GET /v1/health Full tenant health report
DashboardApi get_user_insights GET /v1/user-insights User insights for the dashboard
DirectoryApi get_directory_activity GET /v1/directory-activity Get recent directory activity
DirectoryApi get_directory_permissions GET /v1/directory-permissions Get directory permission settings
DirectoryApi get_directory_stats GET /v1/directory-stats Get directory statistics
DirectoryApi get_gal_settings GET /v1/gal-settings Get Global Address List settings
DirectoryApi rebuild_gal_index POST /v1/gal-settings/rebuild-index Rebuild the GAL search index
DirectoryApi sync_gal POST /v1/gal-settings/sync Sync GAL with external directory sources
DirectoryApi update_directory_permissions PATCH /v1/directory-permissions Update directory permission settings
DirectoryApi update_gal_settings PATCH /v1/gal-settings Update GAL settings
DistributionListsApi create_distribution_list POST /v1/distribution-lists Create a distribution list
DistributionListsApi delete_distribution_list DELETE /v1/distribution-lists/{address} Delete a distribution list
DistributionListsApi get_distribution_list GET /v1/distribution-lists/{address} Get a distribution list
DistributionListsApi list_distribution_lists GET /v1/distribution-lists List distribution lists
DistributionListsApi replace_distribution_list_members PUT /v1/distribution-lists/{address}/members Replace distribution list members
DomainsApi v1_domains_domain_delete DELETE /v1/domains/{domain} Delete a domain
DomainsApi v1_domains_domain_get GET /v1/domains/{domain} Get a domain
DomainsApi v1_domains_domain_verify_post POST /v1/domains/{domain}/verify Force-poll DNS verification
DomainsApi v1_domains_get GET /v1/domains List domains
DomainsApi v1_domains_post POST /v1/domains Register a domain
DraftsApi v1_drafts_draft_id_approve_post POST /v1/drafts/{draftID}/approve Approve a pending draft (human)
DraftsApi v1_drafts_draft_id_cancel_post POST /v1/drafts/{draftID}/cancel Withdraw a pending draft
DraftsApi v1_drafts_draft_id_get GET /v1/drafts/{draftID} Get a draft
DraftsApi v1_drafts_draft_id_reject_post POST /v1/drafts/{draftID}/reject Reject a pending draft (human)
DraftsApi v1_drafts_get GET /v1/drafts List drafts
DraftsApi v1_inboxes_mailbox_drafts_post POST /v1/inboxes/{mailbox}/drafts Propose a new conversation as a draft
DraftsApi v1_threads_thread_id_drafts_post POST /v1/threads/{threadID}/drafts Propose a reply as a draft
EncryptionApi batch_lookup_public_keys GET /v1/encryption/keys/lookup Batch-lookup public keys by email
EncryptionApi create_encryption_key POST /v1/encryption/keys Upload an encryption key pair
EncryptionApi create_encryption_recovery POST /v1/encryption/recovery Store an encryption recovery blob
EncryptionApi get_encryption_key GET /v1/encryption/keys/{email} Get encryption key for a mailbox
EncryptionApi rotate_encryption_key POST /v1/encryption/keys/rotate Rotate an encryption key
HealthApi healthz_get GET /healthz Liveness check
IpPoolsApi create_dedicated_ip_request POST /v1/dedicated-ip-requests Request a dedicated IP
IpPoolsApi get_ip_assignment GET /v1/ip-assignment Get current IP assignment
IpPoolsApi list_dedicated_ip_requests GET /v1/dedicated-ip-requests List dedicated IP requests
MailboxesApi add_shared_member POST /v1/mailboxes/{email}/members Add a shared mailbox member
MailboxesApi list_shared_members GET /v1/mailboxes/{email}/members List shared mailbox members
MailboxesApi remove_shared_member DELETE /v1/mailboxes/{email}/members/{memberEmail} Remove a shared mailbox member
MailboxesApi v1_mailboxes_email_delete DELETE /v1/mailboxes/{email} Soft-delete a mailbox
MailboxesApi v1_mailboxes_email_export_download_get GET /v1/mailboxes/{email}/export/download Download a previously-issued mailbox export
MailboxesApi v1_mailboxes_email_export_post POST /v1/mailboxes/{email}/export Request a mailbox export
MailboxesApi v1_mailboxes_email_get GET /v1/mailboxes/{email} Get a mailbox
MailboxesApi v1_mailboxes_email_patch PATCH /v1/mailboxes/{email} Update a mailbox
MailboxesApi v1_mailboxes_email_vacation_delete DELETE /v1/mailboxes/{email}/vacation Remove the vacation responder
MailboxesApi v1_mailboxes_email_vacation_get GET /v1/mailboxes/{email}/vacation Get the vacation responder
MailboxesApi v1_mailboxes_email_vacation_put PUT /v1/mailboxes/{email}/vacation Set the vacation responder
MailboxesApi v1_mailboxes_get GET /v1/mailboxes List mailboxes
MailboxesApi v1_mailboxes_post POST /v1/mailboxes Create a mailbox
MailboxesApi v1_vacation_get GET /v1/vacation List all vacation responders
MigrationsApi cancel_migration POST /v1/migrations/{id}/cancel Cancel a running migration
MigrationsApi check_migration_dns GET /v1/migrations/{id}/dns-check Check DNS readiness for cutover
MigrationsApi create_migration POST /v1/migrations Create a migration
MigrationsApi create_migration_credential POST /v1/migrations/credentials Store a migration credential
MigrationsApi delete_migration DELETE /v1/migrations/{id} Delete a migration
MigrationsApi delete_migration_credential DELETE /v1/migrations/credentials/{id} Delete a migration credential
MigrationsApi delta_sync_migration POST /v1/migrations/{id}/delta-sync Run a delta sync
MigrationsApi discover_migration POST /v1/migrations/{id}/discover Discover source mailboxes
MigrationsApi final_sync_migration POST /v1/migrations/{id}/final-sync Run the final sync before cutover
MigrationsApi get_migration GET /v1/migrations/{id} Get a migration
MigrationsApi get_migration_progress GET /v1/migrations/{id}/progress Get migration progress
MigrationsApi list_migration_credentials GET /v1/migrations/credentials List migration credentials
MigrationsApi list_migration_events GET /v1/migrations/{id}/events List migration events
MigrationsApi list_migration_mailboxes GET /v1/migrations/{id}/mailboxes List migration mailboxes
MigrationsApi list_migrations GET /v1/migrations List migrations
MigrationsApi map_migration POST /v1/migrations/{id}/map Map source to destination mailboxes
MigrationsApi retry_migration POST /v1/migrations/{id}/retry Retry a failed or cancelled migration
MigrationsApi start_migration POST /v1/migrations/{id}/start Start the migration
MigrationsApi update_migration PATCH /v1/migrations/{id} Update a migration
MigrationsApi update_migration_mailbox PATCH /v1/migrations/{id}/mailboxes/{mbxId} Update a migration mailbox
MigrationsApi validate_migration POST /v1/migrations/{id}/validate Validate migrated data
ResourcesApi create_resource POST /v1/resources Create a resource
ResourcesApi delete_resource DELETE /v1/resources/{id} Delete a resource
ResourcesApi get_resource GET /v1/resources/{id} Get a resource
ResourcesApi list_resources GET /v1/resources List resources
ResourcesApi update_resource PATCH /v1/resources/{id} Update a resource
SendApi v1_messages_get GET /v1/messages List outbound messages
SendApi v1_messages_id_delete DELETE /v1/messages/{id} Cancel a scheduled send
SendApi v1_messages_id_get GET /v1/messages/{id} Get message status
SendApi v1_messages_stats_get GET /v1/messages/stats Aggregate delivery stats
SendApi v1_send_batch_post POST /v1/send/batch Send a batch of emails
SendApi v1_send_post POST /v1/send Send an email
SignupApi signup POST /v1/signup Sign up a new tenant
SuppressionsApi v1_suppressions_email_delete DELETE /v1/suppressions/{email} Remove a suppression
SuppressionsApi v1_suppressions_email_get GET /v1/suppressions/{email} Check whether an address is suppressed
SuppressionsApi v1_suppressions_get GET /v1/suppressions List suppressed recipients
SuppressionsApi v1_suppressions_post POST /v1/suppressions Add a suppression
TemplatesApi v1_templates_get GET /v1/templates List templates
TemplatesApi v1_templates_id_delete DELETE /v1/templates/{id} Delete a template
TemplatesApi v1_templates_id_get GET /v1/templates/{id} Get a template
TemplatesApi v1_templates_id_put PUT /v1/templates/{id} Update a template
TemplatesApi v1_templates_post POST /v1/templates Create a template
TenantApi v1_tenant_get GET /v1/tenant Get the calling tenant
TenantApi v1_usage_get GET /v1/usage Usage snapshot
TestApi v1_test_inbound_post POST /v1/test/inbound Simulate an inbound email (test keys only)
UsersApi create_user POST /v1/users Create a user
UsersApi delete_user DELETE /v1/users/{id} Delete a user
UsersApi get_user GET /v1/users/{id} Get a user
UsersApi list_users GET /v1/users List users
UsersApi update_user PATCH /v1/users/{id} Update a user
WebhooksApi v1_webhooks_get GET /v1/webhooks List webhooks
WebhooksApi v1_webhooks_id_delete DELETE /v1/webhooks/{id} Delete a webhook
WebhooksApi v1_webhooks_id_patch PATCH /v1/webhooks/{id} Update a webhook
WebhooksApi v1_webhooks_post POST /v1/webhooks Create a webhook

Documentation For Models

Documentation For Authorization

Authentication schemes defined for the API:

bearerAuth

  • Type: Bearer authentication (lk_live__)

oauth2

  • Type: OAuth
  • Flow: accessCode
  • Authorization URL: https://api.lockally.com/oauth/authorize
  • Scopes:
  • inboxes:read: Read agent-accessible mailboxes and threads
  • inboxes:write: Send and act on agent-accessible mailboxes

Author

support@lockally.com

Download files

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

Source Distribution

lockally-0.1.0.tar.gz (192.7 kB view details)

Uploaded Source

Built Distribution

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

lockally-0.1.0-py3-none-any.whl (457.2 kB view details)

Uploaded Python 3

File details

Details for the file lockally-0.1.0.tar.gz.

File metadata

  • Download URL: lockally-0.1.0.tar.gz
  • Upload date:
  • Size: 192.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for lockally-0.1.0.tar.gz
Algorithm Hash digest
SHA256 17bf2afe98b981173821205cf2c64fff9cdada8149a7529a2a9e960267f5fee4
MD5 a56551bd6b1c56bb529883f39e39003d
BLAKE2b-256 d533c26c3cf92eb19c380b54b763910e78bf095bf881c9fea95dcae5afd69a47

See more details on using hashes here.

Provenance

The following attestation bundles were made for lockally-0.1.0.tar.gz:

Publisher: publish.yml on LockallyInc/lockally-python

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

File details

Details for the file lockally-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: lockally-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 457.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for lockally-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1fd4012a7317c23f58ebc937ae28dd8a742214b6adbc20fcfb32401485a2bcdd
MD5 0270574afea01d6b562336084a79640a
BLAKE2b-256 3d2ad068a6909d5b48d3a07e919b83e7159c861e793a5fc8fadf66a3fc4c6464

See more details on using hashes here.

Provenance

The following attestation bundles were made for lockally-0.1.0-py3-none-any.whl:

Publisher: publish.yml on LockallyInc/lockally-python

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

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page