OAA Runner documentation¶
We already have the Python SDK which simplifies building the payloads required for transport data to Veza’s Open Authorization API (OAA). Many connectors have been built using a simple script and this SDK. See examples at the community repository.
While these examples are fairly simple to understand and deploy as standalone python scripts, they remain separate scripts that do not really follow a standard best-practice.
We wanted a predictable way to build these connectors. Anyone who supports or
builds one should know where to look to find the various pieces of a connector.
They should know what to expect. For example, you should know to expect to find
a config.yaml, a modules
folder, and likely a .env file.
In fact, we wrote a utility function to generate a connector project.
Quick Start with uv¶
The fastest way to get started is with uv, a modern Python tool runner:
Check if uv is installed:
uv --versionIf not installed: See How to Install uv
Run an integration:
uv tool run --from oaa-runner oaa app run --config=config.yaml --save-json
!!! note “Deprecated Command”
The older oaa custom_app command is deprecated. Use oaa app instead (functionally identical).
Generate a New Connector Project¶
We wrote a utility function to generate a connector project:
oaa app gen_oaa --folder-location path/to/parent/folder new_app
Running the command above would create a folder structure like this:
├── config.yaml
└── modules
├── workiva_mocks.py
├── workiva_hooks.py
└── workiva.p
What Problem Does this solve?¶
Contents
- How This Documentation is Structured
- Reference
- CLI Commands Reference
- Configuration Schema Reference
- What are OAA Runner Hooks?
- Sample Configurations
- Mock Framework Reference
required_envReference- What are Veza Custom Properties?
- What built-in transforms are available in Field Mappings?
- What is an OAA Runner Config File?
- What is an OAA Config File?
- What is
lazy_dict_table()? - What is OAA?
- What is the
modulesfolder used for? - What is the OAA provider object?
- Where can I find Veza Developer Documentation?
- How To’s
- Tutorials
- Building Your First OAA Integration
- Part 1: Project Setup
- Part 2: Define Your First Source - Users
- Part 3: Create the API Client Module
- Part 4: Field Mapping
- Part 5: Add a Derived Source - Roles
- Part 6: Add Groups Source
- Part 7: Run and Debug
- Part 8: Production Readiness
- Complete Code Reference
- Next Steps
- Appendix: Common Patterns
- Tutorial: Building an Integration with the CLI
- BongaWonga Training Series
- Explanations