### Setup and Run indy-tails-server Locally Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/demo/AliceGetsAPhone.md Clones the indy-tails-server repository, builds its Docker images, and starts the server. This component is essential for revocation functionality and exposes a public URL via ngrok for mobile agent support. ```bash git clone https://github.com/bcgov/indy-tails-server.git cd indy-tails-server/docker ./manage build ./manage start ./manage logs ``` -------------------------------- ### Install Demo Prerequisites Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/demo/README.md Installs the necessary Python dependencies for running the agent/controller examples from the demo folder. This command requires a Python 3 environment and the `demo/requirements.txt` file. ```bash pip3 install -r demo/requirements.txt ``` -------------------------------- ### Install Project Dependencies Source: https://github.com/openwallet-foundation/acapy/blob/main/scenarios/README.md Installs project dependencies using Poetry. The `--no-root` flag prevents installation of the project itself, useful when working with local development dependencies. ```shell poetry install --no-root ``` -------------------------------- ### ACAPy Project Setup Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/demo/AliceGetsAPhone.md Clones the ACAPy repository and navigates into the demo directory. This is the initial step for setting up the local ACAPy environment. ```bash git clone https://github.com/openwallet-foundation/acapy.git cd acapy/demo ``` -------------------------------- ### ACA-Py Feature Configuration Help Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/demo/README.md Example command to access help for ACA-Py features and parameters, typically used when starting agents with additional command-line arguments. ```bash ./scripts/run_docker start --help ``` -------------------------------- ### ACA-Py Start Command Line Arguments Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/testing/Logging.md Examples of starting the ACA-Py agent using command-line arguments to configure logging. This includes setting the log level, specifying a log file, and pointing to a custom log configuration. ```sh ./bin/aca-py start --log-level debug --log-file acapy.log --log-config acapy_agent.config:default_multitenant_logging_config.ini ./bin/aca-py start --log-level debug --log-file --multitenant --log-config ./acapy_agent/config/default_multitenant_logging_config.yml ``` -------------------------------- ### Setup and Run ELK Stack Source: https://github.com/openwallet-foundation/acapy/blob/main/demo/elk-stack/README.md Commands to initialize the ELK stack by copying the sample environment file, building Docker images, and starting the services. This sets up Elasticsearch, Kibana, and Logstash for log and trace aggregation. ```bash cp .env.sample .env docker compose build docker compose up ``` -------------------------------- ### Start Alice Agent Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/demo/OpenAPIDemo.md Clones the ACA-Py repository, navigates to the demo directory, and starts the Alice agent in the background. It also shows how to view the agent's logs. ```bash git clone https://github.com/openwallet-foundation/acapy cd acapy/demo LEDGER_URL=http://test.bcovrin.vonx.io ./run_demo alice --events --no-auto --bg ``` ```bash docker logs -f alice ``` -------------------------------- ### Run All Tests with Pytest Source: https://github.com/openwallet-foundation/acapy/blob/main/scenarios/README.md Executes all tests marked with the 'examples' tag using Poetry and Pytest from the scenarios directory. This command runs the entire test suite. ```shell cd scenarios poetry run pytest -m examples ``` -------------------------------- ### Run ACA-Py Examples with Docker Compose Source: https://github.com/openwallet-foundation/acapy/blob/main/demo/playground/README.md Instructions for building and running ACA-Py example tests using Docker Compose. This involves navigating to the examples directory, building the Docker images, and then running the tests or the playground. ```shell cd examples docker compose build docker compose run tests -s - or - docker compose up ``` -------------------------------- ### Run ACA-Py Examples with Mediator Service Source: https://github.com/openwallet-foundation/acapy/blob/main/demo/playground/README.md Steps to run ACA-Py example tests that require a mediator service. This involves setting the MEDIATOR_INVITATION_URL environment variable before building and running the Docker Compose setup. ```shell cd examples docker compose build docker compose run -e MEDIATOR_INVITATION_URL= tests -s - or - MEDIATOR_INVITATION_URL= docker compose up ``` -------------------------------- ### DIDResolver Plugin Setup Example Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/features/DIDResolution.md Illustrates the setup process for a custom DID resolver plugin in ACA-Py, showing how to register a new resolver with the main DIDResolver registry. ```Python from acapy_agent.config.injection_context import InjectionContext from ..resolver.did_resolver import DIDResolver from .example_resolver import ExampleResolver async def setup(context: InjectionContext): """Setup the plugin.""" registry = context.inject(DIDResolver) resolver = ExampleResolver() await resolver.setup(context) registry.append(resolver) ``` -------------------------------- ### Install Pre-commit Hooks for Code Formatting Source: https://github.com/openwallet-foundation/acapy/blob/main/CONTRIBUTING.md Installs the pre-commit hooks to automatically check and format code according to project standards, using tools like ruff. ```bash pre-commit install ``` -------------------------------- ### Setup von-network Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/features/devcontainer.md Clones the von-network repository, builds the Docker images, and starts the network. This is a prerequisite for running certain ACA-Py demos that require a ledger. ```sh git clone https://github.com/bcgov/von-network cd von-network ./manage build ./manage start cd .. ``` -------------------------------- ### Dependabot PR Link Example Source: https://github.com/openwallet-foundation/acapy/blob/main/PUBLISHING.md Example markdown for linking to a range of Dependabot PRs merged within a specific date range, used in the CHANGELOG.md. ```markdown - Dependabot PRs - [List of Dependabot PRs in this release](https://github.com/openwallet-foundation/acapy/pulls?q=is%3Apr+is%3Amerged+merged%3A2024-08-16..2024-09-16+author%3Aapp%2Fdependabot+) ``` -------------------------------- ### Initial Setup and Running Default Tests Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/testing/BDDTests.md This snippet outlines the initial steps to clone necessary repositories, build and start the von-network and indy-tails-server, and then run the ACA-Py Behave tests with a default configuration, excluding TAA-required tests. ```bash git clone https://github.com/bcgov/von-network cd von-network ./manage build ./manage start cd .. git clone https://github.com/bcgov/indy-tails-server.git cd indy-tails-server/docker ./manage build ./manage start cd ../.. git clone "https://github.com/openwallet-foundation/acapy" cd acapy/demo ./run_bdd -t ~@taa_required ``` -------------------------------- ### Start Faber Agent Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/demo/OpenAPIDemo.md Clones the ACA-Py repository, navigates to the demo directory, and starts the Faber agent in the background. It also shows how to view the agent's logs. ```bash git clone https://github.com/openwallet-foundation/acapy cd acapy/demo LEDGER_URL=http://test.bcovrin.vonx.io ./run_demo faber --events --no-auto --bg ``` ```bash docker logs -f faber ``` -------------------------------- ### Poetry: Install with Extras Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/deploying/Poetry.md Installs optional dependencies defined as 'extras' in the `pyproject.toml` file. This allows users to install specific feature sets of your package. ```bash poetry install -E extras-name ``` ```bash poetry install -E "askar bbs indy" ``` -------------------------------- ### Run Scenario with Docker Compose Source: https://github.com/openwallet-foundation/acapy/blob/main/scenarios/README.md Navigates to a specific scenario directory and starts the services defined in the docker-compose.yml file. This is used to run individual test scenarios. ```shell cd scenarios/examples/simple docker compose up ``` -------------------------------- ### Changelog PR Entry Example Source: https://github.com/openwallet-foundation/acapy/blob/main/PUBLISHING.md Example format for entries in the CHANGELOG.md file, detailing PR number, link, and author. This format is generated by the genChangeLog.sh script. ```markdown - Only change interop testing fork on pull requests [\#3218](https://github.com/openwallet-foundation/acapy/pull/3218) [jamshale](https://github.com/jamshale) - Remove the RC from the versions table [\#3213](https://github.com/openwallet-foundation/acapy/pull/3213) [swcurran](https://github.com/swcurran) - Feature multikey management [\#3246](https://github.com/openwallet-foundation/acapy/pull/3246) [PatStLouis](https://github.com/PatStLouis) ``` -------------------------------- ### Install Pre-commit Hook for Commit Messages Source: https://github.com/openwallet-foundation/acapy/blob/main/CONTRIBUTING.md Installs the pre-commit hook specifically designed to lint commit messages, aiding in changelog generation. ```bash pre-commit install --hook-type commit-msg ``` -------------------------------- ### Poetry: Install Development Dependencies Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/deploying/Poetry.md Installs all dependencies, including those marked for development. This is useful when setting up a development environment to ensure all necessary tools are available. ```bash poetry install --dev ``` -------------------------------- ### ngrok API Documentation Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/demo/AliceGetsAPhone.md Documentation for the ngrok CLI command to create HTTP tunnels. It specifies the port to expose and provides example output. ```APIDOC ngrok http Creates an HTTP tunnel to a local port. : The local port to expose. Example: ngrok http 8020 Output: Forwarding -> http://localhost: Forwarding -> http://localhost: ``` -------------------------------- ### ACA-Py Local Execution Commands Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/features/DevReadMe.md Provides commands to run ACA-Py locally after installation via PyPi. Includes checking version, listing modes, and viewing help for provisioning and starting the agent. ```bash aca-py --version aca-py --help aca-py provision --help aca-py start --help ``` -------------------------------- ### Start Aca-Py Agent Source: https://github.com/openwallet-foundation/acapy/blob/main/demo/docker-test/README.md Starts the Aca-Py agent instance using Docker Compose. This should be run after the database is initialized. ```bash docker-compose -f docker-compose-agent.yml up ``` -------------------------------- ### ACA-Py Resolver Plugin Installation and Configuration Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/features/DIDResolution.md Guides users on how to install and configure third-party DID resolver plugins for ACA-Py. This includes using pip for installation, enabling plugins via command-line arguments or configuration files, and providing a Dockerfile example. ```shell pip install git+https://github.com/dbluhm/acapy-resolver-github ``` ```shell $ aca-py start \ --plugin acapy_resolver_github \ # ... the remainder of your startup arguments ``` ```shell docker build -t resolver-example . docker run --rm -it -p 3000:3000 -p 3001:3001 resolver-example ``` -------------------------------- ### Poetry: Install Project Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/deploying/Poetry.md Installs project dependencies and creates a virtual environment if one doesn't exist. This is typically the first command run after cloning a project or setting up Poetry. ```bash poetry install ``` -------------------------------- ### Prepare Documentation Site Source: https://github.com/openwallet-foundation/acapy/blob/main/PUBLISHING.md Updates documentation site configuration using mkdocs. Requires running a script to prepare and then build the documentation. A clean step is crucial to revert temporary changes. ```bash ./scripts/prepmkdocs.sh mkdocs ``` ```bash ./scripts/prepmkdocs.sh clean ``` -------------------------------- ### Clone ACME Repository and Navigate to Demo Directory Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/demo/AliceWantsAJsonCredential.md Initial setup involves cloning the ACME repository from GitHub and changing the directory to the demo folder. This prepares the environment for running the agent demonstrations. ```bash git clone https://github.com/openwallet-foundation/acapy.git cd acapy/demo ``` -------------------------------- ### Get Credential Revocation Status Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/deploying/AnonCredsControllerMigration.md Retrieves the revocation status for a credential. This endpoint has been updated to use the /anoncreds path. ```APIDOC GET /anoncreds/revocation/credential-record Description: Retrieves the revocation status of a credential. No payload changes from the previous /revocation/credential-record endpoint. ``` -------------------------------- ### Setup indy-tails-server Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/features/devcontainer.md Clones the indy-tails-server repository, builds its Docker images, and starts the server. This is necessary for ACA-Py agents that require revocation functionality. ```sh git clone https://github.com/bcgov/indy-tails-server.git cd indy-tails-server/docker ./manage build ./manage start cd ../.. ``` -------------------------------- ### Get Credential Definitions API Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/deploying/AnonCredsControllerMigration.md Details the endpoint change for retrieving a list of created credential definitions. The response payload remains unchanged. ```APIDOC Endpoint Change: GET /credential-definitions/created -> GET /anoncreds/credential-definitions Notes: - Response payloads have no changes. ``` -------------------------------- ### Get Credential Definition API Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/deploying/AnonCredsControllerMigration.md Details the changes for retrieving a specific credential definition, including endpoint modification and updated response payload structure. ```APIDOC Endpoint Change: GET /credential-definitions/{schema_id} -> GET /anoncreds/credential-definition/{cred_def_id} Response Payload Change: (New Response Format) GET /anoncreds/credential-definition/{cred_def_id} Content-Type: application/json { "credential_definition": { "issuerId": "WgWxqztrNooG92RXvxSTWv", "schemaId": "WgWxqztrNooG92RXvxSTWv:2:schema_name:1.0", "tag": "default", "type": "CL", "value": {...}, "revocation": {...} }, "credential_definition_id": "WgWxqztrNooG92RXvxSTWv:3:CL:20:tag", "credential_definitions_metadata": {}, "resolution_metadata": {} } Parameters: cred_def_id (string): The ID of the credential definition to retrieve. Response Fields: credential_definition (object): The credential definition details. issuerId (string): The issuer's public DID. schemaId (string): The schema ID. tag (string): The tag associated with the definition. type (string): The type of credential definition (e.g., 'CL'). value (object): The credential definition values. revocation (object, optional): Revocation details if supported. credential_definition_id (string): The unique identifier for the credential definition. credential_definitions_metadata (object): Metadata related to the credential definition. resolution_metadata (object): Metadata related to the resolution process. ``` -------------------------------- ### Logging Trace Events to ELK Stack Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/testing/AgentTracing.md Example commands for starting ACA-PY demo agents configured to send trace events to an ELK stack running in Docker. ```bash DOCKER_NET=elknet TRACE_TARGET_URL=logstash:9700 ./run_demo faber --trace-http ``` ```bash DOCKER_NET=elknet TRACE_TARGET_URL=logstash:9700 ./run_demo alice --trace-http ``` -------------------------------- ### Environment File Setup Source: https://github.com/openwallet-foundation/acapy/blob/main/demo/playground/README.md Copies the sample environment file to be used for configuration. This file typically contains settings like port numbers and ngrok authentication tokens. ```shell cp .env.sample .env ``` -------------------------------- ### Launch ACA-Py with Redis Cache using Docker Compose Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/deploying/RedisPlugins.md Command to launch ACA-Py and a Redis instance using a provided docker-compose.yml file. This is a simple way to get started with the plugin. ```sh docker-compose up --build -d ``` -------------------------------- ### Run ACA-Py via Docker Script Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/features/DevReadMe.md Provides an example of running ACA-Py using a provided Docker script, including starting an agent with specific transports and enabling debug logging. ```bash ./scripts/run_docker start ``` ```bash ./scripts/run_docker start --inbound-transport http 0.0.0.0 10000 --outbound-transport http --debug --log-level DEBUG ``` -------------------------------- ### Run Acme Controller Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/demo/AcmeDemoWorkshop.md Starts the Acme controller for the demo, connecting to a test ledger. Acme will later issue an employment credential to Alice. ```bash LEDGER_URL=http://test.bcovrin.vonx.io ./run_demo acme ``` -------------------------------- ### Running Tests with PostgreSQL Wallet Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/testing/BDDTests.md This example demonstrates how to run ACA-Py integration tests using a PostgreSQL backend wallet. It requires starting a PostgreSQL container and setting the ACAPY_ARG_FILE environment variable. ```bash # Ensure previous setup commands are run up to cd acapy/demo docker run --name some-postgres -e POSTGRES_PASSWORD=mysecretpassword -d -p 5432:5432 postgres:10 ACAPY_ARG_FILE=postgres-indy-args.yml ./run_bdd ``` -------------------------------- ### Dockerfile for ACA-Py with Resolver Plugin Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/features/DIDResolution.md Provides a complete Dockerfile to build an ACA-Py agent image that includes a specific resolver plugin (e.g., GitHub resolver). It installs the plugin and configures the agent to start with the plugin enabled. ```dockerfile FROM ghcr.io/openwallet-foundation/acapy-agent:py3.12-1.3.0 RUN pip3 install git+https://github.com/dbluhm/acapy-resolver-github CMD ["aca-py", "start", "-it", "http", "0.0.0.0", "3000", "-ot", "http", "-e", "http://localhost:3000", "--admin", "0.0.0.0", "3001", "--admin-insecure-mode", "--no-ledger", "--plugin", "acapy_resolver_github"] ``` -------------------------------- ### Start Local Postgres Instance Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/demo/README.md Starts a local PostgreSQL database instance in a Docker container. This instance is used for wallet persistence in the demo. It maps port 5432 and configures logging. ```bash docker run --name some-postgres -e POSTGRES_PASSWORD=mysecretpassword -d -p 5432:5432 postgres -c 'log_statement=all' -c 'logging_collector=on' -c 'log_destination=stderr' ``` -------------------------------- ### Run Local Indy Ledger Browser Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/demo/README.md Starts a local Indy ledger browser and server, typically used when not employing the VON Network setup. It requires specifying the path to the genesis file and configures the port and DID registration settings. ```bash GENESIS_FILE=/path/to/local-genesis.txt PORT=9000 REGISTER_NEW_DIDS=true python -m server.server ``` -------------------------------- ### Run Alice Controller Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/demo/AcmeDemoWorkshop.md Starts the Alice controller for the demo, connecting to a test ledger. Alice will interact with Faber to prove education. ```bash LEDGER_URL=http://test.bcovrin.vonx.io ./run_demo alice ``` -------------------------------- ### Start Alice Agent with Docker Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/demo/OpenAPIDemo.md Navigates to the demo directory and starts the Alice agent in detached mode using Docker, similar to the Faber agent. It also specifies the ledger URL and enables event logging. ```bash LEDGER_URL=http://test.bcovrin.vonx.io ./run_demo alice --events --no-auto --bg ``` -------------------------------- ### Faber Agent Credential Issuance Output Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/demo/AliceGetsAPhone.md Example output from the Faber agent console during credential issuance. It displays state transitions, credential exchange IDs, and revocation-specific identifiers if revocation is active. ```text Faber | Credential: state = credential-issued, cred_ex_id = ba3089d6-92da-4cb7-9062-7f24066b2a2a Faber | Revocation registry ID: CMqNjZ8e59jDuBYcquce4D:4:CMqNjZ8e59jDuBYcquce4D:3:CL:50:faber.agent.degree_schema:CL_ACCUM:4f4fb2e4-3a59-45b1-8921-578d005a7ff6 Faber | Credential revocation ID: 1 Faber | Credential: state = done, cred_ex_id = ba3089d6-92da-4cb7-9062-7f24066b2a2a ``` -------------------------------- ### Poetry: Build Package Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/deploying/Poetry.md Builds the project into distributable artifacts, typically source distributions (sdist) and wheels. These artifacts are placed in the `dist/` directory and can be uploaded to package indexes. ```bash poetry build ``` -------------------------------- ### Start Enterprise Search with Docker Compose Source: https://github.com/openwallet-foundation/acapy/blob/main/demo/elk-stack/extensions/enterprise-search/README.md Launches the Enterprise Search service along with the main stack by including the `enterprise-search-compose.yml` file in the Docker Compose command. ```console docker-compose -f docker-compose.yml -f extensions/enterprise-search/enterprise-search-compose.yml up ``` -------------------------------- ### Get and Rotate Active Registry Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/deploying/AnonCredsControllerMigration.md This snippet covers minor API path updates for retrieving and rotating the active revocation registry. The core functionality and payload structures remain unchanged, only the base path for these operations has been modified. ```APIDOC API Endpoint Changes: - **Get Current Active Registry:** - **Old Endpoint**: GET /revocation/active-registry/{cred_def_id} - **New Endpoint**: GET /anoncreds/revocation/active-registry/{cred_def_id} - **Payload**: No changes. - **Rotate Active Registry:** - **Old Endpoint**: POST /revocation/active-registry/{cred_def_id}/rotate - **New Endpoint**: POST /anoncreds/revocation/active-registry/{cred_def_id}/rotate - **Payload**: No changes. ``` -------------------------------- ### Build and Preview Documentation Locally Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/UpdateRTD.md Builds the HTML version of the documentation locally using `sphinx-build`. This command generates the output in the `./_build` directory for local review before deployment. ```bash cd docs; sphinx-build -b html -a -E -c ./ ./_build; cd .. ``` -------------------------------- ### Faber Agent Invitation URLs Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/demo/AliceGetsAPhone.md Example invitation URLs generated by the Faber agent. These URLs contain connection details and are used by mobile agents to establish a connection. They can be scanned directly or converted to QR codes. ```bash https://abfde260.ngrok.io?c_i=eyJAdHlwZSI6ICJkaWQ6c292OkJ6Q2JzTlloTXJqSGlxWkRUVUFTSGc7c3BlYy9jb25uZWN0aW9ucy8xLjAvaW52aXRhdGlvbiIsICJAaWQiOiAiZjI2ZjA2YTItNWU1Mi00YTA5LWEwMDctOTNkODBiZTYyNGJlIiwgInJlY2lwaWVudEtleXMiOiBbIjlQRFE2alNXMWZwZkM5UllRWGhCc3ZBaVJrQmVKRlVhVmI0QnRQSFdWbTFXIl0sICJsYWJlbCI6ICJGYWJlci5BZ2VudCIsICJzZXJ2aWNlRW5kcG9pbnQiOiAiaHR0cHM6Ly9hYmZkZTI2MC5uZ3Jvay5pbyJ9 ``` ```bash http://ip10-0-121-4-bquqo816b480a4bfn3kg-8020.direct.play-with-docker.com?c_i=eyJAdHlwZSI6ICJkaWQ6c292OkJ6Q2JzTlloTXJqSGlxWkRUVUFTSGc7c3BlYy9jb25uZWN0aW9ucy8xLjAvaW52aXRhdGlvbiIsICJAaWQiOiAiZWI2MTI4NDUtYmU1OC00YTNiLTk2MGUtZmE3NDUzMGEwNzkyIiwgInJlY2lwaWVudEtleXMiOiBbIkFacEdoMlpIOTJVNnRFRTlmYk13Z3BqQkp3TEUzRFJIY1dCbmg4Y2FqdzNiIl0sICJzZXJ2aWNlRW5kcG9pbnQiOiAiaHR0cHM6Ly9hYmZkZTI2MC5uZ3Jvay5pbyIsICJsYWJlbCI6ICJGYWJlci5BZ2VudCJ9 ``` -------------------------------- ### ACA-Py/Traction OpenAPI Interaction Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/demo/ACA-Py-Workshop.md This section details the process of accessing and using the ACA-Py or Traction OpenAPI (Swagger) interface. It covers obtaining authorization tokens, navigating the interface, and executing API calls, with a focus on the GET /connections endpoint as an example. It also references external demos for further guidance. ```APIDOC ACA-Py/Traction OpenAPI Usage: This guide outlines the steps to interact with the ACA-Py or Traction OpenAPI (Swagger) interface. 1. **Accessing the OpenAPI Interface**: * Navigate to your Traction Tenant. * Click the User icon (top right) and select "Developer". * Locate and expand the "Encoded JWT" section. * Click the "Copy" icon to copy the JWT. This prefix "Bearer " is crucial for authorization. * Go to "About" from the left menu, then click "Traction." * Click the link labeled "Swagger URL" to open the OpenAPI (Swagger) API. * The URL format is typically your Traction Tenant API with `"api/doc"` appended (e.g., `https://traction-sandbox-tenant-proxy.apps.silver.devops.gov.bc.ca/api/doc`). 2. **Authorization**: * In the OpenAPI interface, click "Authorize" in the top right. * In the "AuthorizationHeader (apiKey)" box, paste the copied encoded JWT (which includes the "Bearer " prefix). * Close the authorization window. 3. **Testing Endpoints**: * Try out various endpoints. For example, locate the "GET /connections" endpoint. * Click "Try It Out" and then "Execute". * The expected response is a list of connections established in your Tenant. 4. **Further Resources**: * **ACA-Py OpenAPI Demo**: Provides an outline of the process for using OpenAPI/Swagger, though it may not use a Traction Tenant directly. It helps understand the sequence of calls for Aries-type activities. * URL: `https://aca-py.org/main/demo/OpenAPIDemo/#using-the-openapiswagger-user-interface` * **Traction Issuance Demo**: A simple Web App demonstrating the use of the Traction OpenAPI, useful for understanding how to integrate capabilities into a Line of Business application. * Source Code: `https://github.com/openwallet-foundation/acapy-controllers/tree/main/TractionIssuanceDemo` **Note**: The ACA-Py/Traction API is extensive but generally well-organized. Familiarize yourself with the Traction API structure to recognize items. ``` -------------------------------- ### Install Documentation Dependencies Source: https://github.com/openwallet-foundation/acapy/blob/main/docs/UpdateRTD.md Installs necessary Python packages for Sphinx and Read The Docs theme from the requirements file. Ensures all dependencies are met for documentation generation. ```bash pip install -r docs/requirements.txt --upgrade ```