API Reference¶
Complete API reference for the FoxNose Python SDK.
Management Client¶
foxnose_sdk.management.ManagementClient
¶
Bases: _ManagementPathsMixin
Synchronous client for the Foxnose Management API.
Functions¶
request(method, path, *, params=None, json_body=None, headers=None, parse_json=True)
¶
Low-level escape hatch for calling arbitrary endpoints.
list_organizations()
¶
List all organizations accessible to the authenticated user.
get_organization(org_key)
¶
Retrieve details for a specific organization.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
org_key
|
OrgRef
|
Unique identifier of the organization. |
required |
update_organization(org_key, payload)
¶
Update an organization's settings.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
org_key
|
OrgRef
|
Unique identifier of the organization. |
required |
payload
|
Mapping[str, Any]
|
Fields to update (e.g., name, settings). |
required |
list_regions()
¶
List all available deployment regions.
get_available_plans()
¶
Retrieve the list of available subscription plans.
get_organization_plan(org_key)
¶
Get the current subscription plan for an organization.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
org_key
|
OrgRef
|
Unique identifier of the organization. |
required |
set_organization_plan(org_key, plan_code)
¶
Change the subscription plan for an organization.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
org_key
|
OrgRef
|
Unique identifier of the organization. |
required |
plan_code
|
str
|
Code of the plan to activate. |
required |
get_organization_usage(org_key)
¶
Retrieve usage statistics for an organization.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
org_key
|
OrgRef
|
Unique identifier of the organization. |
required |
list_management_api_keys(*, params=None)
¶
List all Management API keys in the environment.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
params
|
Mapping[str, Any] | None
|
Optional query parameters for filtering/pagination. |
None
|
create_management_api_key(payload)
¶
Create a new Management API key.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
payload
|
Mapping[str, Any]
|
Key configuration including name and role assignments. |
required |
get_management_api_key(key)
¶
Retrieve details for a specific Management API key.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
key
|
ManagementAPIKeyRef
|
Unique identifier of the API key. |
required |
update_management_api_key(key, payload)
¶
Update a Management API key.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
key
|
ManagementAPIKeyRef
|
Unique identifier of the API key. |
required |
payload
|
Mapping[str, Any]
|
Fields to update. |
required |
delete_management_api_key(key)
¶
Delete a Management API key.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
key
|
ManagementAPIKeyRef
|
Unique identifier of the API key to delete. |
required |
list_flux_api_keys(*, params=None)
¶
List all Flux API keys in the environment.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
params
|
Mapping[str, Any] | None
|
Optional query parameters for filtering/pagination. |
None
|
create_flux_api_key(payload)
¶
Create a new Flux API key.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
payload
|
Mapping[str, Any]
|
Key configuration including name and role assignments. |
required |
get_flux_api_key(key)
¶
Retrieve details for a specific Flux API key.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
key
|
FluxAPIKeyRef
|
Unique identifier of the API key. |
required |
update_flux_api_key(key, payload)
¶
Update a Flux API key.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
key
|
FluxAPIKeyRef
|
Unique identifier of the API key. |
required |
payload
|
Mapping[str, Any]
|
Fields to update. |
required |
delete_flux_api_key(key)
¶
Delete a Flux API key.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
key
|
FluxAPIKeyRef
|
Unique identifier of the API key to delete. |
required |
list_apis(*, params=None)
¶
List all APIs in the environment.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
params
|
Mapping[str, Any] | None
|
Optional query parameters for filtering/pagination. |
None
|
create_api(payload)
¶
Create a new API endpoint configuration.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
payload
|
Mapping[str, Any]
|
API configuration including name and settings. |
required |
get_api(api_key)
¶
Retrieve details for a specific API.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
api_key
|
APIRef
|
Unique identifier of the API. |
required |
update_api(api_key, payload)
¶
Update an API configuration.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
api_key
|
APIRef
|
Unique identifier of the API. |
required |
payload
|
Mapping[str, Any]
|
Fields to update. |
required |
delete_api(api_key)
¶
Delete an API.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
api_key
|
APIRef
|
Unique identifier of the API to delete. |
required |
list_api_folders(api_key, *, params=None)
¶
List folders exposed through an API.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
api_key
|
APIRef
|
Unique identifier of the API. |
required |
params
|
Mapping[str, Any] | None
|
Optional query parameters for filtering/pagination. |
None
|
add_api_folder(api_key, folder_key, *, allowed_methods=None, description_get_one=None, description_get_many=None, description_search=None, description_schema=None)
¶
Add a folder to an API.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
api_key
|
APIRef
|
Unique identifier of the API. |
required |
folder_key
|
FolderRef
|
Unique identifier of the folder to add. |
required |
allowed_methods
|
list[str] | None
|
HTTP methods allowed for this folder (e.g., ["GET", "POST"]). |
None
|
description_get_one
|
str | None
|
Optional short description for the get-one route. |
None
|
description_get_many
|
str | None
|
Optional short description for the list route. |
None
|
description_search
|
str | None
|
Optional short description for the search route. |
None
|
description_schema
|
str | None
|
Optional short description for the schema route. |
None
|
get_api_folder(api_key, folder_key)
¶
Retrieve details for a folder within an API.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
api_key
|
APIRef
|
Unique identifier of the API. |
required |
folder_key
|
FolderRef
|
Unique identifier of the folder. |
required |
update_api_folder(api_key, folder_key, *, allowed_methods=None, description_get_one=None, description_get_many=None, description_search=None, description_schema=None)
¶
Update a folder's configuration within an API.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
api_key
|
APIRef
|
Unique identifier of the API. |
required |
folder_key
|
FolderRef
|
Unique identifier of the folder. |
required |
allowed_methods
|
list[str] | None
|
HTTP methods allowed for this folder. |
None
|
description_get_one
|
str | None
|
Optional short description for the get-one route. |
None
|
description_get_many
|
str | None
|
Optional short description for the list route. |
None
|
description_search
|
str | None
|
Optional short description for the search route. |
None
|
description_schema
|
str | None
|
Optional short description for the schema route. |
None
|
remove_api_folder(api_key, folder_key)
¶
Remove a folder from an API.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
api_key
|
APIRef
|
Unique identifier of the API. |
required |
folder_key
|
FolderRef
|
Unique identifier of the folder to remove. |
required |
list_management_roles(*, params=None)
¶
List all Management API roles in the environment.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
params
|
Mapping[str, Any] | None
|
Optional query parameters for filtering/pagination. |
None
|
create_management_role(payload)
¶
Create a new Management API role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
payload
|
Mapping[str, Any]
|
Role configuration including name and permissions. |
required |
get_management_role(role_key)
¶
Retrieve details for a specific Management API role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
role_key
|
ManagementRoleRef
|
Unique identifier of the role. |
required |
update_management_role(role_key, payload)
¶
Update a Management API role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
role_key
|
ManagementRoleRef
|
Unique identifier of the role. |
required |
payload
|
Mapping[str, Any]
|
Fields to update. |
required |
delete_management_role(role_key)
¶
Delete a Management API role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
role_key
|
ManagementRoleRef
|
Unique identifier of the role to delete. |
required |
list_management_role_permissions(role_key)
¶
List all permissions assigned to a Management API role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
role_key
|
ManagementRoleRef
|
Unique identifier of the role. |
required |
upsert_management_role_permission(role_key, payload)
¶
Create or update a permission for a Management API role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
role_key
|
ManagementRoleRef
|
Unique identifier of the role. |
required |
payload
|
Mapping[str, Any]
|
Permission configuration. |
required |
delete_management_role_permission(role_key, content_type)
¶
Delete a permission from a Management API role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
role_key
|
ManagementRoleRef
|
Unique identifier of the role. |
required |
content_type
|
str
|
Content type of the permission to delete. |
required |
replace_management_role_permissions(role_key, permissions)
¶
Replace all permissions for a Management API role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
role_key
|
ManagementRoleRef
|
Unique identifier of the role. |
required |
permissions
|
list[Mapping[str, Any]]
|
List of permission configurations to set. |
required |
list_management_permission_objects(role_key, *, content_type)
¶
List permission objects for a Management API role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
role_key
|
ManagementRoleRef
|
Unique identifier of the role. |
required |
content_type
|
str
|
Content type to filter by. |
required |
add_management_permission_object(role_key, payload)
¶
Add a permission object to a Management API role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
role_key
|
ManagementRoleRef
|
Unique identifier of the role. |
required |
payload
|
Mapping[str, Any]
|
Permission object configuration. |
required |
delete_management_permission_object(role_key, payload)
¶
Delete a permission object from a Management API role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
role_key
|
ManagementRoleRef
|
Unique identifier of the role. |
required |
payload
|
Mapping[str, Any]
|
Permission object to delete. |
required |
list_flux_roles(*, params=None)
¶
List all Flux API roles in the environment.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
params
|
Mapping[str, Any] | None
|
Optional query parameters for filtering/pagination. |
None
|
create_flux_role(payload)
¶
Create a new Flux API role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
payload
|
Mapping[str, Any]
|
Role configuration including name and permissions. |
required |
get_flux_role(role_key)
¶
Retrieve details for a specific Flux API role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
role_key
|
FluxRoleRef
|
Unique identifier of the role. |
required |
update_flux_role(role_key, payload)
¶
Update a Flux API role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
role_key
|
FluxRoleRef
|
Unique identifier of the role. |
required |
payload
|
Mapping[str, Any]
|
Fields to update. |
required |
delete_flux_role(role_key)
¶
Delete a Flux API role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
role_key
|
FluxRoleRef
|
Unique identifier of the role to delete. |
required |
list_flux_role_permissions(role_key)
¶
List all permissions assigned to a Flux API role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
role_key
|
FluxRoleRef
|
Unique identifier of the role. |
required |
upsert_flux_role_permission(role_key, payload)
¶
Create or update a permission for a Flux API role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
role_key
|
FluxRoleRef
|
Unique identifier of the role. |
required |
payload
|
Mapping[str, Any]
|
Permission configuration. |
required |
delete_flux_role_permission(role_key, content_type)
¶
Delete a permission from a Flux API role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
role_key
|
FluxRoleRef
|
Unique identifier of the role. |
required |
content_type
|
str
|
Content type of the permission to delete. |
required |
replace_flux_role_permissions(role_key, permissions)
¶
Replace all permissions for a Flux API role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
role_key
|
FluxRoleRef
|
Unique identifier of the role. |
required |
permissions
|
list[Mapping[str, Any]]
|
List of permission configurations to set. |
required |
list_flux_permission_objects(role_key, *, content_type)
¶
List permission objects for a Flux API role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
role_key
|
FluxRoleRef
|
Unique identifier of the role. |
required |
content_type
|
str
|
Content type to filter by. |
required |
add_flux_permission_object(role_key, payload)
¶
Add a permission object to a Flux API role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
role_key
|
FluxRoleRef
|
Unique identifier of the role. |
required |
payload
|
Mapping[str, Any]
|
Permission object configuration. |
required |
delete_flux_permission_object(role_key, payload)
¶
Delete a permission object from a Flux API role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
role_key
|
FluxRoleRef
|
Unique identifier of the role. |
required |
payload
|
Mapping[str, Any]
|
Permission object to delete. |
required |
list_folders(*, params=None)
¶
List all folders in the environment.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
params
|
Mapping[str, Any] | None
|
Optional query parameters for filtering/pagination. |
None
|
get_folder(folder_key)
¶
Retrieve details for a specific folder by key.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Unique identifier of the folder. |
required |
get_folder_by_path(path)
¶
Retrieve details for a folder by its path.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
path
|
str
|
Hierarchical path to the folder (e.g., "parent/child"). |
required |
list_folder_tree(*, key=None, mode=None)
¶
List folders as a hierarchical tree.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
key
|
str | None
|
Optional root folder key to start from. |
None
|
mode
|
str | None
|
Tree traversal mode. |
None
|
create_folder(payload)
¶
Create a new folder.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
payload
|
Mapping[str, Any]
|
Folder configuration including name, alias, folder_type, and content_type. |
required |
update_folder(folder_key, payload)
¶
Update a folder's configuration.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Unique identifier of the folder. |
required |
payload
|
Mapping[str, Any]
|
Fields to update. |
required |
delete_folder(folder_key)
¶
Delete a folder.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Unique identifier of the folder to delete. |
required |
list_projects(org_key, *, params=None)
¶
List all projects in an organization.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
org_key
|
OrgRef
|
Unique identifier of the organization. |
required |
params
|
Mapping[str, Any] | None
|
Optional query parameters for filtering/pagination. |
None
|
get_project(org_key, project_key)
¶
Retrieve details for a specific project.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
org_key
|
OrgRef
|
Unique identifier of the organization. |
required |
project_key
|
ProjectRef
|
Unique identifier of the project. |
required |
create_project(org_key, payload)
¶
Create a new project in an organization.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
org_key
|
OrgRef
|
Unique identifier of the organization. |
required |
payload
|
Mapping[str, Any]
|
Project configuration including name and settings. |
required |
update_project(org_key, project_key, payload)
¶
Update a project's configuration.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
org_key
|
OrgRef
|
Unique identifier of the organization. |
required |
project_key
|
ProjectRef
|
Unique identifier of the project. |
required |
payload
|
Mapping[str, Any]
|
Fields to update. |
required |
delete_project(org_key, project_key)
¶
Delete a project.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
org_key
|
OrgRef
|
Unique identifier of the organization. |
required |
project_key
|
ProjectRef
|
Unique identifier of the project to delete. |
required |
list_environments(org_key, project_key)
¶
List all environments in a project.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
org_key
|
OrgRef
|
Unique identifier of the organization. |
required |
project_key
|
ProjectRef
|
Unique identifier of the project. |
required |
get_environment(org_key, project_key, env_key)
¶
Retrieve details for a specific environment.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
org_key
|
OrgRef
|
Unique identifier of the organization. |
required |
project_key
|
ProjectRef
|
Unique identifier of the project. |
required |
env_key
|
EnvironmentRef
|
Unique identifier of the environment. |
required |
create_environment(org_key, project_key, payload)
¶
Create a new environment in a project.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
org_key
|
OrgRef
|
Unique identifier of the organization. |
required |
project_key
|
ProjectRef
|
Unique identifier of the project. |
required |
payload
|
Mapping[str, Any]
|
Environment configuration including name and region. |
required |
update_environment(org_key, project_key, env_key, payload)
¶
Update an environment's configuration.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
org_key
|
OrgRef
|
Unique identifier of the organization. |
required |
project_key
|
ProjectRef
|
Unique identifier of the project. |
required |
env_key
|
EnvironmentRef
|
Unique identifier of the environment. |
required |
payload
|
Mapping[str, Any]
|
Fields to update. |
required |
delete_environment(org_key, project_key, env_key)
¶
Delete an environment.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
org_key
|
OrgRef
|
Unique identifier of the organization. |
required |
project_key
|
ProjectRef
|
Unique identifier of the project. |
required |
env_key
|
EnvironmentRef
|
Unique identifier of the environment to delete. |
required |
toggle_environment(org_key, project_key, env_key, *, is_enabled)
¶
Enable or disable an environment.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
org_key
|
OrgRef
|
Unique identifier of the organization. |
required |
project_key
|
ProjectRef
|
Unique identifier of the project. |
required |
env_key
|
EnvironmentRef
|
Unique identifier of the environment. |
required |
is_enabled
|
bool
|
Whether the environment should be enabled. |
required |
update_environment_protection(org_key, project_key, env_key, *, protection_level, protection_reason=None)
¶
Set protection level for an environment.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
org_key
|
OrgRef
|
Unique identifier of the organization. |
required |
project_key
|
ProjectRef
|
Unique identifier of the project. |
required |
env_key
|
EnvironmentRef
|
Unique identifier of the environment. |
required |
protection_level
|
str
|
Protection level (e.g., "none", "read_only", "locked"). |
required |
protection_reason
|
str | None
|
Optional reason for the protection. |
None
|
clear_environment_protection(org_key, project_key, env_key)
¶
Remove protection from an environment.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
org_key
|
OrgRef
|
Unique identifier of the organization. |
required |
project_key
|
ProjectRef
|
Unique identifier of the project. |
required |
env_key
|
EnvironmentRef
|
Unique identifier of the environment. |
required |
list_locales()
¶
List all locales configured in the environment.
create_locale(payload)
¶
Create a new locale.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
payload
|
Mapping[str, Any]
|
Locale configuration including code and name. |
required |
get_locale(code)
¶
Retrieve details for a specific locale.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
code
|
str
|
Locale code (e.g., "en-US", "de-DE"). |
required |
update_locale(code, payload)
¶
Update a locale's configuration.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
code
|
str
|
Locale code. |
required |
payload
|
Mapping[str, Any]
|
Fields to update. |
required |
delete_locale(code)
¶
Delete a locale.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
code
|
str
|
Locale code to delete. |
required |
list_components(*, params=None)
¶
List all reusable components in the environment.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
params
|
Mapping[str, Any] | None
|
Optional query parameters for filtering/pagination. |
None
|
get_component(component_key)
¶
Retrieve details for a specific component.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
component_key
|
ComponentRef
|
Unique identifier of the component. |
required |
create_component(payload)
¶
Create a new reusable component.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
payload
|
Mapping[str, Any]
|
Component configuration including name and content_type. |
required |
update_component(component_key, payload)
¶
Update a component's configuration.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
component_key
|
ComponentRef
|
Unique identifier of the component. |
required |
payload
|
Mapping[str, Any]
|
Fields to update. |
required |
delete_component(component_key)
¶
Delete a component.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
component_key
|
ComponentRef
|
Unique identifier of the component to delete. |
required |
list_component_versions(component_key, *, params=None)
¶
List all schema versions for a component.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
component_key
|
ComponentRef
|
Unique identifier of the component. |
required |
params
|
Mapping[str, Any] | None
|
Optional query parameters for filtering/pagination. |
None
|
create_component_version(component_key, payload, *, copy_from=None)
¶
Create a new schema version for a component.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
component_key
|
ComponentRef
|
Unique identifier of the component. |
required |
payload
|
Mapping[str, Any]
|
Version configuration including name. |
required |
copy_from
|
SchemaVersionRef | None
|
Optional version key to copy schema from. |
None
|
get_component_version(component_key, version_key, *, include_schema=None)
¶
Retrieve details for a specific component version.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
component_key
|
ComponentRef
|
Unique identifier of the component. |
required |
version_key
|
SchemaVersionRef
|
Unique identifier of the version. |
required |
include_schema
|
bool | None
|
Whether to include the full schema definition. |
None
|
publish_component_version(component_key, version_key)
¶
Publish a component version, making it available for use.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
component_key
|
ComponentRef
|
Unique identifier of the component. |
required |
version_key
|
SchemaVersionRef
|
Unique identifier of the version to publish. |
required |
update_component_version(component_key, version_key, payload)
¶
Update a component version's configuration.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
component_key
|
ComponentRef
|
Unique identifier of the component. |
required |
version_key
|
SchemaVersionRef
|
Unique identifier of the version. |
required |
payload
|
Mapping[str, Any]
|
Fields to update. |
required |
delete_component_version(component_key, version_key)
¶
Delete a component version.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
component_key
|
ComponentRef
|
Unique identifier of the component. |
required |
version_key
|
SchemaVersionRef
|
Unique identifier of the version to delete. |
required |
list_component_fields(component_key, version_key, *, params=None)
¶
List all fields in a component version's schema.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
component_key
|
ComponentRef
|
Unique identifier of the component. |
required |
version_key
|
SchemaVersionRef
|
Unique identifier of the version. |
required |
params
|
Mapping[str, Any] | None
|
Optional query parameters for filtering. |
None
|
create_component_field(component_key, version_key, payload)
¶
Add a new field to a component version's schema.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
component_key
|
ComponentRef
|
Unique identifier of the component. |
required |
version_key
|
SchemaVersionRef
|
Unique identifier of the version. |
required |
payload
|
Mapping[str, Any]
|
Field configuration including name and type. |
required |
get_component_field(component_key, version_key, field_path)
¶
Retrieve details for a specific field in a component schema.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
component_key
|
ComponentRef
|
Unique identifier of the component. |
required |
version_key
|
SchemaVersionRef
|
Unique identifier of the version. |
required |
field_path
|
str
|
Path to the field (e.g., "title" or "metadata.author"). |
required |
update_component_field(component_key, version_key, field_path, payload)
¶
Update a field in a component schema.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
component_key
|
ComponentRef
|
Unique identifier of the component. |
required |
version_key
|
SchemaVersionRef
|
Unique identifier of the version. |
required |
field_path
|
str
|
Path to the field. |
required |
payload
|
Mapping[str, Any]
|
Fields to update. |
required |
delete_component_field(component_key, version_key, field_path)
¶
Delete a field from a component schema.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
component_key
|
ComponentRef
|
Unique identifier of the component. |
required |
version_key
|
SchemaVersionRef
|
Unique identifier of the version. |
required |
field_path
|
str
|
Path to the field to delete. |
required |
list_folder_versions(folder_key, *, params=None)
¶
List all schema versions for a collection folder.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Unique identifier of the folder. |
required |
params
|
Mapping[str, Any] | None
|
Optional query parameters for filtering/pagination. |
None
|
create_folder_version(folder_key, payload, *, copy_from=None)
¶
Create a new schema version for a collection folder.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Unique identifier of the folder. |
required |
payload
|
Mapping[str, Any]
|
Version configuration including name. |
required |
copy_from
|
SchemaVersionRef | None
|
Optional version key to copy schema from. |
None
|
get_folder_version(folder_key, version_key, *, include_schema=None)
¶
Retrieve details for a specific folder schema version.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Unique identifier of the folder. |
required |
version_key
|
SchemaVersionRef
|
Unique identifier of the version. |
required |
include_schema
|
bool | None
|
Whether to include the full schema definition. |
None
|
update_folder_version(folder_key, version_key, payload)
¶
Update a folder schema version's configuration.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Unique identifier of the folder. |
required |
version_key
|
SchemaVersionRef
|
Unique identifier of the version. |
required |
payload
|
Mapping[str, Any]
|
Fields to update. |
required |
delete_folder_version(folder_key, version_key)
¶
Delete a folder schema version.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Unique identifier of the folder. |
required |
version_key
|
SchemaVersionRef
|
Unique identifier of the version to delete. |
required |
publish_folder_version(folder_key, version_key)
¶
Publish a folder schema version, making it active for the folder.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Unique identifier of the folder. |
required |
version_key
|
SchemaVersionRef
|
Unique identifier of the version to publish. |
required |
list_folder_fields(folder_key, version_key, *, params=None)
¶
List all fields in a folder schema version.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Unique identifier of the folder. |
required |
version_key
|
SchemaVersionRef
|
Unique identifier of the version. |
required |
params
|
Mapping[str, Any] | None
|
Optional query parameters for filtering. |
None
|
create_folder_field(folder_key, version_key, payload)
¶
Add a new field to a folder schema version.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Unique identifier of the folder. |
required |
version_key
|
SchemaVersionRef
|
Unique identifier of the version. |
required |
payload
|
Mapping[str, Any]
|
Field configuration including name and type. |
required |
get_folder_field(folder_key, version_key, field_path)
¶
Retrieve details for a specific field in a folder schema.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Unique identifier of the folder. |
required |
version_key
|
SchemaVersionRef
|
Unique identifier of the version. |
required |
field_path
|
str
|
Path to the field (e.g., "title" or "metadata.author"). |
required |
update_folder_field(folder_key, version_key, field_path, payload)
¶
Update a field in a folder schema.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Unique identifier of the folder. |
required |
version_key
|
SchemaVersionRef
|
Unique identifier of the version. |
required |
field_path
|
str
|
Path to the field. |
required |
payload
|
Mapping[str, Any]
|
Fields to update. |
required |
delete_folder_field(folder_key, version_key, field_path)
¶
Delete a field from a folder schema.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Unique identifier of the folder. |
required |
version_key
|
SchemaVersionRef
|
Unique identifier of the version. |
required |
field_path
|
str
|
Path to the field to delete. |
required |
list_resources(folder_key, *, params=None)
¶
List resources inside a specific folder using limit/offset pagination.
get_resource(folder_key, resource_key)
¶
Retrieve metadata for a specific resource.
create_resource(folder_key, payload, *, component=None, external_id=None)
¶
Create a new resource.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Target folder key. |
required |
payload
|
Mapping[str, Any]
|
JSON payload that matches the folder/component schema. |
required |
component
|
ComponentRef | None
|
Optional component key for component-based folders. |
None
|
external_id
|
str | None
|
Optional external identifier for the resource. |
None
|
upsert_resource(folder_key, payload, *, external_id, component=None)
¶
Create or update a resource by external_id.
If no resource with the given external_id exists in the folder, creates a new resource with its first revision (201 Created). If a resource is found, creates a new revision for it (200 OK).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Target folder key. |
required |
payload
|
Mapping[str, Any]
|
JSON payload matching the folder/component schema. |
required |
external_id
|
str
|
External identifier for the resource (required). |
required |
component
|
ComponentRef | None
|
Optional component key for component-based folders. |
None
|
batch_upsert_resources(folder_key, items, *, max_concurrency=5, fail_fast=False, on_progress=None)
¶
Upsert multiple resources concurrently using threads.
Each item is processed via :meth:upsert_resource. Results are
collected into a :class:BatchUpsertResult containing succeeded
and failed lists.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Target folder key (shared across all items). |
required |
items
|
Sequence[BatchUpsertItem]
|
Sequence of :class: |
required |
max_concurrency
|
int
|
Maximum number of parallel workers (default 5). |
5
|
fail_fast
|
bool
|
If |
False
|
on_progress
|
Callable[[int, int], None] | None
|
Optional callback invoked as
|
None
|
update_resource(folder_key, resource_key, payload)
¶
Update a resource by creating a new revision payload.
delete_resource(folder_key, resource_key)
¶
Delete a resource.
get_resource_data(folder_key, resource_key)
¶
Fetch the published JSON data for a resource.
list_revisions(folder_key, resource_key, *, params=None)
¶
List all revisions for a resource.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Unique identifier of the folder. |
required |
resource_key
|
ResourceRef
|
Unique identifier of the resource. |
required |
params
|
Mapping[str, Any] | None
|
Optional query parameters for filtering/pagination. |
None
|
create_revision(folder_key, resource_key, payload)
¶
Create a new revision for a resource.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Unique identifier of the folder. |
required |
resource_key
|
ResourceRef
|
Unique identifier of the resource. |
required |
payload
|
Mapping[str, Any]
|
Revision data matching the folder schema. |
required |
get_revision(folder_key, resource_key, revision_key)
¶
Retrieve details for a specific revision.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Unique identifier of the folder. |
required |
resource_key
|
ResourceRef
|
Unique identifier of the resource. |
required |
revision_key
|
RevisionRef
|
Unique identifier of the revision. |
required |
update_revision(folder_key, resource_key, revision_key, payload)
¶
Update a revision's data.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Unique identifier of the folder. |
required |
resource_key
|
ResourceRef
|
Unique identifier of the resource. |
required |
revision_key
|
RevisionRef
|
Unique identifier of the revision. |
required |
payload
|
Mapping[str, Any]
|
Updated revision data. |
required |
delete_revision(folder_key, resource_key, revision_key)
¶
Delete a revision.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Unique identifier of the folder. |
required |
resource_key
|
ResourceRef
|
Unique identifier of the resource. |
required |
revision_key
|
RevisionRef
|
Unique identifier of the revision to delete. |
required |
publish_revision(folder_key, resource_key, revision_key, payload=None)
¶
Publish a revision, making it the active version of the resource.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Unique identifier of the folder. |
required |
resource_key
|
ResourceRef
|
Unique identifier of the resource. |
required |
revision_key
|
RevisionRef
|
Unique identifier of the revision to publish. |
required |
payload
|
Mapping[str, Any] | None
|
Optional publish configuration. |
None
|
validate_revision(folder_key, resource_key, revision_key)
¶
Validate a revision before publishing.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Unique identifier of the folder. |
required |
resource_key
|
ResourceRef
|
Unique identifier of the resource. |
required |
revision_key
|
RevisionRef
|
Unique identifier of the revision. |
required |
Returns:
| Type | Description |
|---|---|
Mapping[str, Any]
|
Validation result containing any errors found. |
get_revision_data(folder_key, resource_key, revision_key)
¶
Fetch the JSON data for a specific revision.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Unique identifier of the folder. |
required |
resource_key
|
ResourceRef
|
Unique identifier of the resource. |
required |
revision_key
|
RevisionRef
|
Unique identifier of the revision. |
required |
close()
¶
Close the HTTP transport and release resources.
Async Management Client¶
foxnose_sdk.management.AsyncManagementClient
¶
Bases: _ManagementPathsMixin
Async variant of :class:ManagementClient.
Functions¶
upsert_resource(folder_key, payload, *, external_id, component=None)
async
¶
Create or update a resource by external_id.
If no resource with the given external_id exists in the folder, creates a new resource with its first revision (201 Created). If a resource is found, creates a new revision for it (200 OK).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Target folder key. |
required |
payload
|
Mapping[str, Any]
|
JSON payload matching the folder/component schema. |
required |
external_id
|
str
|
External identifier for the resource (required). |
required |
component
|
ComponentRef | None
|
Optional component key for component-based folders. |
None
|
batch_upsert_resources(folder_key, items, *, max_concurrency=5, fail_fast=False, on_progress=None)
async
¶
Upsert multiple resources concurrently using async tasks.
Each item is processed via :meth:upsert_resource. Results are
collected into a :class:BatchUpsertResult containing succeeded
and failed lists.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
folder_key
|
FolderRef
|
Target folder key (shared across all items). |
required |
items
|
Sequence[BatchUpsertItem]
|
Sequence of :class: |
required |
max_concurrency
|
int
|
Maximum number of parallel workers (default 5). |
5
|
fail_fast
|
bool
|
If |
False
|
on_progress
|
Callable[[int, int], None] | None
|
Optional callback invoked as
|
None
|
validate_revision(folder_key, resource_key, revision_key)
async
¶
Validate a revision before publishing. Returns validation errors if any.
Flux Client¶
foxnose_sdk.flux.FluxClient
¶
Synchronous client for Flux delivery APIs.
Functions¶
get_resource(folder_path, resource_key, *, params=None)
¶
Get a single resource by key.
vector_search(folder_path, *, query, fields=None, top_k=10, similarity_threshold=None, limit=None, offset=None, **extra_body)
¶
Semantic search using auto-generated embeddings.
vector_field_search(folder_path, *, field, query_vector, top_k=10, similarity_threshold=None, limit=None, offset=None, **extra_body)
¶
Search using custom pre-computed embeddings.
hybrid_search(folder_path, *, query, find_text, fields=None, top_k=10, similarity_threshold=None, vector_weight=0.6, text_weight=0.4, rerank_results=True, limit=None, offset=None, **extra_body)
¶
Blended text + vector search with configurable weights.
boosted_search(folder_path, *, find_text, query=None, field=None, query_vector=None, top_k=10, similarity_threshold=None, boost_factor=1.5, boost_similarity_threshold=None, max_boost_results=20, limit=None, offset=None, **extra_body)
¶
Text search with results boosted by vector similarity.
get_router(*, params=None)
¶
Return available routes and contracts under the configured API prefix.
get_schema(folder_path, *, params=None)
¶
Return live JSON Schema and metadata for the given folder path.
Async Flux Client¶
foxnose_sdk.flux.AsyncFluxClient
¶
Async variant of :class:FluxClient.
Functions¶
get_resource(folder_path, resource_key, *, params=None)
async
¶
Get a single resource by key.
vector_search(folder_path, *, query, fields=None, top_k=10, similarity_threshold=None, limit=None, offset=None, **extra_body)
async
¶
Semantic search using auto-generated embeddings.
vector_field_search(folder_path, *, field, query_vector, top_k=10, similarity_threshold=None, limit=None, offset=None, **extra_body)
async
¶
Search using custom pre-computed embeddings.
hybrid_search(folder_path, *, query, find_text, fields=None, top_k=10, similarity_threshold=None, vector_weight=0.6, text_weight=0.4, rerank_results=True, limit=None, offset=None, **extra_body)
async
¶
Blended text + vector search with configurable weights.
boosted_search(folder_path, *, find_text, query=None, field=None, query_vector=None, top_k=10, similarity_threshold=None, boost_factor=1.5, boost_similarity_threshold=None, max_boost_results=20, limit=None, offset=None, **extra_body)
async
¶
Text search with results boosted by vector similarity.
get_router(*, params=None)
async
¶
Return available routes and contracts under the configured API prefix.
get_schema(folder_path, *, params=None)
async
¶
Return live JSON Schema and metadata for the given folder path.
Vector Search Models¶
foxnose_sdk.flux.models.SearchMode
¶
Bases: str, Enum
Search mode for the Flux search endpoint.
foxnose_sdk.flux.models.VectorSearch
¶
Bases: BaseModel
Configuration for auto-generated embedding search.
foxnose_sdk.flux.models.VectorFieldSearch
¶
Bases: BaseModel
Configuration for custom pre-computed embedding search.
foxnose_sdk.flux.models.VectorBoostConfig
¶
Bases: BaseModel
Configuration for vector-boosted search mode.
foxnose_sdk.flux.models.HybridConfig
¶
Bases: BaseModel
Configuration for hybrid (text + vector) search mode.
foxnose_sdk.flux.models.SearchRequest
¶
Bases: BaseModel
Full search request payload for the Flux search endpoint.
Supports all search modes: text, vector, vector_boosted, and hybrid.
Extra fields (e.g. where, sort) are forwarded to the API.
Authentication¶
JWTAuth¶
foxnose_sdk.auth.JWTAuth
¶
Bases: AuthStrategy
Adds Authorization: Bearer headers using a token provider.
SimpleKeyAuth¶
foxnose_sdk.auth.SimpleKeyAuth
¶
SecureKeyAuth¶
foxnose_sdk.auth.SecureKeyAuth
¶
Bases: AuthStrategy
Implements the Secure <public>:<signature> header used by both APIs.
The signature uses ECDSA P-256 over <path>|<sha256(body)>|<timestamp>.
AuthStrategy¶
foxnose_sdk.auth.AuthStrategy
¶
Reference Type Aliases¶
The following type aliases are used in method signatures and can be imported for your own type annotations. Each accepts either a string key or the corresponding model object.
| Type alias | Definition |
|---|---|
FolderRef |
Union[str, FolderSummary] |
ResourceRef |
Union[str, ResourceSummary] |
RevisionRef |
Union[str, RevisionSummary] |
ComponentRef |
Union[str, ComponentSummary] |
SchemaVersionRef |
Union[str, SchemaVersionSummary] |
OrgRef |
Union[str, OrganizationSummary] |
ProjectRef |
Union[str, ProjectSummary] |
EnvironmentRef |
Union[str, EnvironmentSummary] |
ManagementRoleRef |
Union[str, ManagementRoleSummary] |
FluxRoleRef |
Union[str, FluxRoleSummary] |
ManagementAPIKeyRef |
Union[str, ManagementAPIKeySummary] |
FluxAPIKeyRef |
Union[str, FluxAPIKeySummary] |
APIRef |
Union[str, APIInfo] |
Errors¶
foxnose_sdk.errors.FoxnoseAPIError
dataclass
¶
Bases: FoxnoseError
Raised when the API responds with an error status.
Models¶
Pagination¶
foxnose_sdk.management.models.PaginatedResponse
¶
Bases: BaseModel, Generic[T]
Generic pagination envelope returned by Management API list endpoints.
Folder Models¶
foxnose_sdk.management.models.FolderSummary
¶
Bases: BaseModel
Metadata returned for folder definitions.
Resource Models¶
foxnose_sdk.management.models.ResourceSummary
¶
Bases: BaseModel
Metadata describing a Management API resource entry.
Revision Models¶
foxnose_sdk.management.models.RevisionSummary
¶
Bases: BaseModel
Metadata describing a revision associated with a resource.
Component Models¶
foxnose_sdk.management.models.ComponentSummary
¶
Bases: BaseModel
Metadata describing a reusable component schema.
Schema Models¶
foxnose_sdk.management.models.SchemaVersionSummary
¶
Bases: BaseModel
Represents a schema/model version for folders or components.
foxnose_sdk.management.models.FieldSummary
¶
Bases: BaseModel
Schema field metadata for a version.
Organization Models¶
foxnose_sdk.management.models.OrganizationSummary
¶
Bases: BaseModel
Represents an organization and its billing metadata.
foxnose_sdk.management.models.OrganizationUsage
¶
Bases: BaseModel
Overall usage payload returned by the monitoring endpoint.
Project Models¶
foxnose_sdk.management.models.ProjectSummary
¶
Bases: BaseModel
Represents a project within an organization.
Environment Models¶
foxnose_sdk.management.models.EnvironmentSummary
¶
Bases: BaseModel
Represents an environment under a project.
foxnose_sdk.management.models.LocaleSummary
¶
Bases: BaseModel
Represents an environment locale.
Role Models¶
foxnose_sdk.management.models.ManagementRoleSummary
¶
Bases: BaseModel
Represents a management API role.
foxnose_sdk.management.models.FluxRoleSummary
¶
Bases: BaseModel
Represents a Flux API role.
foxnose_sdk.management.models.RolePermission
¶
Bases: BaseModel
Permission entry attached to a role.
API Key Models¶
foxnose_sdk.management.models.ManagementAPIKeySummary
¶
Bases: BaseModel
Represents a Management API key under an environment.
foxnose_sdk.management.models.FluxAPIKeySummary
¶
Bases: BaseModel
Represents a Flux API key under an environment.
API Models¶
foxnose_sdk.management.models.APIInfo
¶
Bases: BaseModel
Represents a public API definition for delivering content.
foxnose_sdk.management.models.APIFolderSummary
¶
Bases: BaseModel
Association between an API and a folder.