├── .devcontainer ├── Dockerfile └── devcontainer.json ├── .gcloudignore ├── .github ├── ISSUE_TEMPLATE │ ├── bug.md │ └── feature_request.md ├── dependabot.yml └── workflows │ ├── codeql-analysis.yml │ ├── docker-publish.yml │ ├── gen-docs.yml │ ├── golangci-lint.yml │ ├── gorelease-action.yml │ ├── licenses.tpl │ └── scorecard.yml ├── .gitignore ├── .golangci.yml ├── .goreleaser.yml ├── .vscode ├── extensions.json ├── launch.json └── settings.json ├── CONTRIBUTING.md ├── Dockerfile ├── LICENSE.txt ├── README.md ├── SECURITY.md ├── cloudbuild.yaml ├── cmd └── apigeecli │ └── apigeecli.go ├── cosign.pub ├── docs ├── apigeecli.md ├── apigeecli_apicategories.md ├── apigeecli_apicategories_create.md ├── apigeecli_apicategories_delete.md ├── apigeecli_apicategories_export.md ├── apigeecli_apicategories_get.md ├── apigeecli_apicategories_import.md ├── apigeecli_apicategories_list.md ├── apigeecli_apidocs.md ├── apigeecli_apidocs_create.md ├── apigeecli_apidocs_delete.md ├── apigeecli_apidocs_documentation.md ├── apigeecli_apidocs_documentation_get.md ├── apigeecli_apidocs_documentation_update.md ├── apigeecli_apidocs_export.md ├── apigeecli_apidocs_get.md ├── apigeecli_apidocs_import.md ├── apigeecli_apidocs_list.md ├── apigeecli_apidocs_update.md ├── apigeecli_apihub.md ├── apigeecli_apihub_apis.md ├── apigeecli_apihub_apis_create.md ├── apigeecli_apihub_apis_delete.md ├── apigeecli_apihub_apis_export.md ├── apigeecli_apihub_apis_get.md ├── apigeecli_apihub_apis_list.md ├── apigeecli_apihub_apis_update.md ├── apigeecli_apihub_apis_versions.md ├── apigeecli_apihub_apis_versions_create.md ├── apigeecli_apihub_apis_versions_delete.md ├── apigeecli_apihub_apis_versions_get.md ├── apigeecli_apihub_apis_versions_list.md ├── apigeecli_apihub_apis_versions_specs.md ├── apigeecli_apihub_apis_versions_specs_create.md ├── apigeecli_apihub_apis_versions_specs_delete.md ├── apigeecli_apihub_apis_versions_specs_get.md ├── apigeecli_apihub_apis_versions_specs_lint.md ├── apigeecli_apihub_apis_versions_specs_list.md ├── apigeecli_apihub_apis_versions_specs_update.md ├── apigeecli_apihub_apis_versions_update.md ├── apigeecli_apihub_attributes.md ├── apigeecli_apihub_attributes_create.md ├── apigeecli_apihub_attributes_delete.md ├── apigeecli_apihub_attributes_get.md ├── apigeecli_apihub_attributes_list.md ├── apigeecli_apihub_attributes_update.md ├── apigeecli_apihub_dependencies.md ├── apigeecli_apihub_dependencies_create.md ├── apigeecli_apihub_dependencies_delete.md ├── apigeecli_apihub_dependencies_get.md ├── apigeecli_apihub_dependencies_list.md ├── apigeecli_apihub_deployments.md ├── apigeecli_apihub_deployments_create.md ├── apigeecli_apihub_deployments_delete.md ├── apigeecli_apihub_deployments_get.md ├── apigeecli_apihub_deployments_list.md ├── apigeecli_apihub_deployments_update.md ├── apigeecli_apihub_externalapis.md ├── apigeecli_apihub_externalapis_create.md ├── apigeecli_apihub_externalapis_delete.md ├── apigeecli_apihub_externalapis_get.md ├── apigeecli_apihub_externalapis_list.md ├── apigeecli_apihub_externalapis_update.md ├── apigeecli_apihub_instances.md ├── apigeecli_apihub_instances_create.md ├── apigeecli_apihub_instances_get.md ├── apigeecli_apihub_instances_list.md ├── apigeecli_apihub_project-attachments.md ├── apigeecli_apihub_project-attachments_create.md ├── apigeecli_apihub_project-attachments_delete.md ├── apigeecli_apihub_project-attachments_get.md ├── apigeecli_apihub_project-attachments_list.md ├── apigeecli_apihub_project-registrations.md ├── apigeecli_apihub_project-registrations_create.md ├── apigeecli_apihub_project-registrations_list.md ├── apigeecli_apis.md ├── apigeecli_apis_clean.md ├── apigeecli_apis_clone.md ├── apigeecli_apis_create.md ├── apigeecli_apis_create_bundle.md ├── apigeecli_apis_create_github.md ├── apigeecli_apis_create_graphql.md ├── apigeecli_apis_create_integration.md ├── apigeecli_apis_create_openapi.md ├── apigeecli_apis_create_swagger.md ├── apigeecli_apis_debugsessions.md ├── apigeecli_apis_debugsessions_create.md ├── apigeecli_apis_debugsessions_get.md ├── apigeecli_apis_debugsessions_list.md ├── apigeecli_apis_delete.md ├── apigeecli_apis_deploy.md ├── apigeecli_apis_export.md ├── apigeecli_apis_fetch.md ├── apigeecli_apis_get.md ├── apigeecli_apis_import.md ├── apigeecli_apis_kvm.md ├── apigeecli_apis_kvm_create.md ├── apigeecli_apis_kvm_delete.md ├── apigeecli_apis_kvm_list.md ├── apigeecli_apis_list.md ├── apigeecli_apis_listdeploy.md ├── apigeecli_apis_move.md ├── apigeecli_apis_undeploy.md ├── apigeecli_apis_update.md ├── apigeecli_appgroups.md ├── apigeecli_appgroups_apps.md ├── apigeecli_appgroups_apps_create.md ├── apigeecli_appgroups_apps_delete.md ├── apigeecli_appgroups_apps_export.md ├── apigeecli_appgroups_apps_get.md ├── apigeecli_appgroups_apps_import.md ├── apigeecli_appgroups_apps_keys.md ├── apigeecli_appgroups_apps_keys_create.md ├── apigeecli_appgroups_apps_keys_delete-product.md ├── apigeecli_appgroups_apps_keys_delete.md ├── apigeecli_appgroups_apps_keys_get.md ├── apigeecli_appgroups_apps_keys_manage.md ├── apigeecli_appgroups_apps_keys_update-prod.md ├── apigeecli_appgroups_apps_list.md ├── apigeecli_appgroups_apps_manage.md ├── apigeecli_appgroups_apps_update.md ├── apigeecli_appgroups_create.md ├── apigeecli_appgroups_delete.md ├── apigeecli_appgroups_export.md ├── apigeecli_appgroups_get.md ├── apigeecli_appgroups_import.md ├── apigeecli_appgroups_list.md ├── apigeecli_appgroups_manage.md ├── apigeecli_appgroups_update.md ├── apigeecli_apps.md ├── apigeecli_apps_create.md ├── apigeecli_apps_delete.md ├── apigeecli_apps_export.md ├── apigeecli_apps_genkey.md ├── apigeecli_apps_get.md ├── apigeecli_apps_import.md ├── apigeecli_apps_keys.md ├── apigeecli_apps_keys_create.md ├── apigeecli_apps_keys_delete.md ├── apigeecli_apps_keys_get.md ├── apigeecli_apps_keys_manage.md ├── apigeecli_apps_keys_update.md ├── apigeecli_apps_list.md ├── apigeecli_apps_manage.md ├── apigeecli_apps_update.md ├── apigeecli_cache.md ├── apigeecli_cache_delete.md ├── apigeecli_cache_list.md ├── apigeecli_datacollectors.md ├── apigeecli_datacollectors_create.md ├── apigeecli_datacollectors_delete.md ├── apigeecli_datacollectors_export.md ├── apigeecli_datacollectors_get.md ├── apigeecli_datacollectors_import.md ├── apigeecli_datacollectors_list.md ├── apigeecli_datastores.md ├── apigeecli_datastores_create.md ├── apigeecli_datastores_delete.md ├── apigeecli_datastores_get.md ├── apigeecli_datastores_list.md ├── apigeecli_datastores_test.md ├── apigeecli_datastores_update.md ├── apigeecli_developers.md ├── apigeecli_developers_adjust.md ├── apigeecli_developers_create.md ├── apigeecli_developers_credit.md ├── apigeecli_developers_delete.md ├── apigeecli_developers_export.md ├── apigeecli_developers_get.md ├── apigeecli_developers_getapps.md ├── apigeecli_developers_import.md ├── apigeecli_developers_list.md ├── apigeecli_developers_subscriptions.md ├── apigeecli_developers_subscriptions_create.md ├── apigeecli_developers_subscriptions_expire.md ├── apigeecli_developers_subscriptions_export.md ├── apigeecli_developers_subscriptions_get.md ├── apigeecli_developers_subscriptions_list.md ├── apigeecli_developers_update.md ├── apigeecli_endpoints.md ├── apigeecli_endpoints_create.md ├── apigeecli_endpoints_delete.md ├── apigeecli_endpoints_get.md ├── apigeecli_endpoints_list.md ├── apigeecli_envgroups.md ├── apigeecli_envgroups_attach.md ├── apigeecli_envgroups_create.md ├── apigeecli_envgroups_delete.md ├── apigeecli_envgroups_detach.md ├── apigeecli_envgroups_get.md ├── apigeecli_envgroups_import.md ├── apigeecli_envgroups_list.md ├── apigeecli_envgroups_listattach.md ├── apigeecli_envgroups_update.md ├── apigeecli_environments.md ├── apigeecli_environments_archives.md ├── apigeecli_environments_archives_create.md ├── apigeecli_environments_archives_delete.md ├── apigeecli_environments_archives_get.md ├── apigeecli_environments_archives_list.md ├── apigeecli_environments_ax-obfuscation.md ├── apigeecli_environments_create.md ├── apigeecli_environments_debugmask.md ├── apigeecli_environments_debugmask_get.md ├── apigeecli_environments_debugmask_set.md ├── apigeecli_environments_delete.md ├── apigeecli_environments_deployments.md ├── apigeecli_environments_deployments_config.md ├── apigeecli_environments_deployments_get.md ├── apigeecli_environments_export.md ├── apigeecli_environments_get.md ├── apigeecli_environments_iam.md ├── apigeecli_environments_iam_get.md ├── apigeecli_environments_iam_removerole.md ├── apigeecli_environments_iam_setadmin.md ├── apigeecli_environments_iam_setax.md ├── apigeecli_environments_iam_setcustom.md ├── apigeecli_environments_iam_setdeploy.md ├── apigeecli_environments_iam_setsync.md ├── apigeecli_environments_iam_test.md ├── apigeecli_environments_import.md ├── apigeecli_environments_list.md ├── apigeecli_environments_secactions.md ├── apigeecli_environments_secactions_create.md ├── apigeecli_environments_secactions_disable.md ├── apigeecli_environments_secactions_enable.md ├── apigeecli_environments_secactions_get.md ├── apigeecli_environments_secactions_list.md ├── apigeecli_environments_secactionscfg.md ├── apigeecli_environments_secactionscfg_disable.md ├── apigeecli_environments_secactionscfg_enable.md ├── apigeecli_environments_secactionscfg_get.md ├── apigeecli_environments_secincidents.md ├── apigeecli_environments_secincidents_get.md ├── apigeecli_environments_secincidents_list.md ├── apigeecli_environments_set.md ├── apigeecli_environments_traceconfig.md ├── apigeecli_environments_traceconfig_disable.md ├── apigeecli_environments_traceconfig_get.md ├── apigeecli_environments_traceconfig_overrides.md ├── apigeecli_environments_traceconfig_overrides_create.md ├── apigeecli_environments_traceconfig_overrides_get.md ├── apigeecli_environments_traceconfig_overrides_list.md ├── apigeecli_environments_traceconfig_update.md ├── apigeecli_flowhooks.md ├── apigeecli_flowhooks_attach.md ├── apigeecli_flowhooks_detach.md ├── apigeecli_flowhooks_get.md ├── apigeecli_flowhooks_list.md ├── apigeecli_iam.md ├── apigeecli_iam_create.md ├── apigeecli_instances.md ├── apigeecli_instances_attachments.md ├── apigeecli_instances_attachments_attach.md ├── apigeecli_instances_attachments_detach.md ├── apigeecli_instances_attachments_get.md ├── apigeecli_instances_attachments_list.md ├── apigeecli_instances_create.md ├── apigeecli_instances_delete.md ├── apigeecli_instances_get.md ├── apigeecli_instances_list.md ├── apigeecli_instances_nat.md ├── apigeecli_instances_nat_activate.md ├── apigeecli_instances_nat_delete.md ├── apigeecli_instances_nat_list.md ├── apigeecli_instances_nat_reserve.md ├── apigeecli_instances_update.md ├── apigeecli_keyaliases.md ├── apigeecli_keyaliases_create.md ├── apigeecli_keyaliases_csr.md ├── apigeecli_keyaliases_delete.md ├── apigeecli_keyaliases_get.md ├── apigeecli_keyaliases_getcert.md ├── apigeecli_keyaliases_list.md ├── apigeecli_keyaliases_update.md ├── apigeecli_keystores.md ├── apigeecli_keystores_create.md ├── apigeecli_keystores_delete.md ├── apigeecli_keystores_export.md ├── apigeecli_keystores_get.md ├── apigeecli_keystores_import.md ├── apigeecli_keystores_list.md ├── apigeecli_kvms.md ├── apigeecli_kvms_create.md ├── apigeecli_kvms_delete.md ├── apigeecli_kvms_entries.md ├── apigeecli_kvms_entries_create.md ├── apigeecli_kvms_entries_delete.md ├── apigeecli_kvms_entries_export.md ├── apigeecli_kvms_entries_get.md ├── apigeecli_kvms_entries_import.md ├── apigeecli_kvms_entries_list.md ├── apigeecli_kvms_entries_update.md ├── apigeecli_kvms_export.md ├── apigeecli_kvms_import.md ├── apigeecli_kvms_list.md ├── apigeecli_observations.md ├── apigeecli_observations_jobs.md ├── apigeecli_observations_jobs_create.md ├── apigeecli_observations_jobs_delete.md ├── apigeecli_observations_jobs_disable.md ├── apigeecli_observations_jobs_enable.md ├── apigeecli_observations_jobs_get.md ├── apigeecli_observations_jobs_list.md ├── apigeecli_observations_sources.md ├── apigeecli_observations_sources_create.md ├── apigeecli_observations_sources_delete.md ├── apigeecli_observations_sources_get.md ├── apigeecli_observations_sources_list.md ├── apigeecli_operations.md ├── apigeecli_operations_get.md ├── apigeecli_operations_list.md ├── apigeecli_organizations.md ├── apigeecli_organizations_create.md ├── apigeecli_organizations_delete.md ├── apigeecli_organizations_deployments.md ├── apigeecli_organizations_deployments_get.md ├── apigeecli_organizations_enable-apigee-connect.md ├── apigeecli_organizations_enable-ax-obfuscation.md ├── apigeecli_organizations_export.md ├── apigeecli_organizations_get.md ├── apigeecli_organizations_import.md ├── apigeecli_organizations_ingressconfig.md ├── apigeecli_organizations_list.md ├── apigeecli_organizations_reports.md ├── apigeecli_organizations_reports_monthly.md ├── apigeecli_organizations_reports_yearly.md ├── apigeecli_organizations_set.md ├── apigeecli_organizations_setaddons.md ├── apigeecli_organizations_setmart.md ├── apigeecli_organizations_update.md ├── apigeecli_preferences.md ├── apigeecli_preferences_get.md ├── apigeecli_preferences_remove.md ├── apigeecli_preferences_set.md ├── apigeecli_products.md ├── apigeecli_products_attributes.md ├── apigeecli_products_attributes_delete.md ├── apigeecli_products_attributes_get.md ├── apigeecli_products_attributes_list.md ├── apigeecli_products_attributes_update.md ├── apigeecli_products_create.md ├── apigeecli_products_delete.md ├── apigeecli_products_export.md ├── apigeecli_products_get.md ├── apigeecli_products_import.md ├── apigeecli_products_list.md ├── apigeecli_products_move.md ├── apigeecli_products_rateplans.md ├── apigeecli_products_rateplans_create.md ├── apigeecli_products_rateplans_delete.md ├── apigeecli_products_rateplans_export.md ├── apigeecli_products_rateplans_get.md ├── apigeecli_products_rateplans_list.md ├── apigeecli_products_update.md ├── apigeecli_projects.md ├── apigeecli_projects_testiam.md ├── apigeecli_references.md ├── apigeecli_references_create.md ├── apigeecli_references_delete.md ├── apigeecli_references_export.md ├── apigeecli_references_get.md ├── apigeecli_references_import.md ├── apigeecli_references_list.md ├── apigeecli_references_update.md ├── apigeecli_reports.md ├── apigeecli_reports_delete.md ├── apigeecli_reports_get.md ├── apigeecli_reports_list.md ├── apigeecli_resources.md ├── apigeecli_resources_create.md ├── apigeecli_resources_delete.md ├── apigeecli_resources_get.md ├── apigeecli_resources_list.md ├── apigeecli_resources_update.md ├── apigeecli_securityprofiles.md ├── apigeecli_securityprofiles_attach.md ├── apigeecli_securityprofiles_compute.md ├── apigeecli_securityprofiles_create.md ├── apigeecli_securityprofiles_delete.md ├── apigeecli_securityprofiles_detach.md ├── apigeecli_securityprofiles_export.md ├── apigeecli_securityprofiles_get.md ├── apigeecli_securityprofiles_import.md ├── apigeecli_securityprofiles_list.md ├── apigeecli_securityprofiles_listrevisions.md ├── apigeecli_securityprofiles_update.md ├── apigeecli_sharedflows.md ├── apigeecli_sharedflows_clean.md ├── apigeecli_sharedflows_create.md ├── apigeecli_sharedflows_create_bundle.md ├── apigeecli_sharedflows_create_github.md ├── apigeecli_sharedflows_delete.md ├── apigeecli_sharedflows_deploy.md ├── apigeecli_sharedflows_export.md ├── apigeecli_sharedflows_fetch.md ├── apigeecli_sharedflows_get.md ├── apigeecli_sharedflows_import.md ├── apigeecli_sharedflows_list.md ├── apigeecli_sharedflows_listdeploy.md ├── apigeecli_sharedflows_move.md ├── apigeecli_sharedflows_undeploy.md ├── apigeecli_sites.md ├── apigeecli_sites_list.md ├── apigeecli_spaces.md ├── apigeecli_spaces_create.md ├── apigeecli_spaces_delete.md ├── apigeecli_spaces_get.md ├── apigeecli_spaces_iam.md ├── apigeecli_spaces_iam_get.md ├── apigeecli_spaces_iam_removerole.md ├── apigeecli_spaces_iam_seteditor.md ├── apigeecli_spaces_iam_setviewer.md ├── apigeecli_spaces_iam_test.md ├── apigeecli_spaces_list.md ├── apigeecli_spaces_update.md ├── apigeecli_sync.md ├── apigeecli_sync_get.md ├── apigeecli_sync_remove.md ├── apigeecli_sync_reset.md ├── apigeecli_sync_set.md ├── apigeecli_targetservers.md ├── apigeecli_targetservers_create.md ├── apigeecli_targetservers_delete.md ├── apigeecli_targetservers_export.md ├── apigeecli_targetservers_get.md ├── apigeecli_targetservers_import.md ├── apigeecli_targetservers_list.md ├── apigeecli_targetservers_update.md ├── apigeecli_token.md ├── apigeecli_token_cache.md ├── apigeecli_token_gen.md ├── apigeecli_tree.md └── docs.go ├── downloadLatest.sh ├── go.mod ├── go.sum ├── internal ├── apiclient │ ├── bundles.go │ ├── clifile.go │ ├── go.mod │ ├── httpclient.go │ ├── iam.go │ ├── lrowait.go │ ├── options.go │ ├── shared_test.go │ ├── token.go │ └── utils.go ├── bundlegen │ ├── apiproxydef │ │ └── apiproxydef.go │ ├── common │ │ └── common.go │ ├── generateapiv2.go │ ├── generateapiv2_test.go │ ├── generategql.go │ ├── generategql_test.go │ ├── generateint.go │ ├── generateint_test.go │ ├── generateswag.go │ ├── generateswag_test.go │ ├── go.mod │ ├── options.go │ ├── policies │ │ └── policies.go │ ├── proxies │ │ └── proxies.go │ ├── proxybundle │ │ ├── proxybundle.go │ │ └── proxybundle_test.go │ ├── sharedflowdef │ │ └── sharedflowdef.go │ ├── targets │ │ └── targets.go │ └── types.go ├── client │ ├── apicategories │ │ ├── apicategories.go │ │ └── apicategories_test.go │ ├── apidocs │ │ ├── apidocs.go │ │ └── apidocs_test.go │ ├── apis │ │ ├── apis.go │ │ ├── apis_test.go │ │ ├── kvm.go │ │ ├── kvm_test.go │ │ ├── trace.go │ │ └── trace_test.go │ ├── appgroups │ │ ├── app.go │ │ ├── app_test.go │ │ ├── appgroups.go │ │ ├── appgroups_test.go │ │ ├── keys.go │ │ └── keys_test.go │ ├── apps │ │ ├── apps.go │ │ ├── apps_test.go │ │ ├── keys.go │ │ └── keys_test.go │ ├── cache │ │ ├── cache.go │ │ └── cache_test.go │ ├── clienttest │ │ └── clienttest.go │ ├── datacollectors │ │ ├── datacollectors.go │ │ └── datacollectors_test.go │ ├── datastores │ │ └── datastores.go │ ├── developers │ │ ├── balance.go │ │ ├── developers.go │ │ ├── developers_test.go │ │ └── subscriptions.go │ ├── env │ │ ├── archives.go │ │ ├── debugmask.go │ │ ├── debugmask_test.go │ │ ├── env.go │ │ ├── env_test.go │ │ ├── iam.go │ │ ├── reports.go │ │ ├── securityactions.go │ │ ├── securityincidents.go │ │ ├── securityreports.go │ │ ├── traceconfig.go │ │ └── traceoverrides.go │ ├── envgroups │ │ ├── envgroups.go │ │ └── envgroups_test.go │ ├── eptattachment │ │ └── eptattchment.go │ ├── flowhooks │ │ ├── flowhook_test.go │ │ └── flowhooks.go │ ├── go.mod │ ├── hub │ │ ├── hub.go │ │ └── hub_test.go │ ├── instances │ │ ├── attachments.go │ │ ├── instances.go │ │ └── nat.go │ ├── keyaliases │ │ ├── keyaliases.go │ │ └── keyaliases_test.go │ ├── keystores │ │ ├── keystores.go │ │ └── keystores_test.go │ ├── kvm │ │ ├── entries.go │ │ ├── entries_test.go │ │ ├── kvm.go │ │ └── kvm_test.go │ ├── observe │ │ └── observe.go │ ├── operations │ │ ├── operations.go │ │ └── operations_test.go │ ├── orgs │ │ ├── orgs.go │ │ ├── orgs_test.go │ │ ├── reports.go │ │ └── reports_test.go │ ├── products │ │ ├── products.go │ │ ├── products_test.go │ │ └── rateplans.go │ ├── references │ │ ├── references.go │ │ └── references_test.go │ ├── reports │ │ └── reports.go │ ├── res │ │ ├── res.go │ │ └── res_test.go │ ├── securityprofiles │ │ └── securityprofiles.go │ ├── sharedflows │ │ ├── sharedflows.go │ │ └── sharedflows_test.go │ ├── sites │ │ ├── sites.go │ │ └── sites_test.go │ ├── spaces │ │ ├── iam.go │ │ └── spaces.go │ ├── sync │ │ └── sync.go │ └── targetservers │ │ ├── targetservers.go │ │ └── targetservers_test.go ├── clilog │ ├── go.mod │ └── log.go └── cmd │ ├── apicategories │ ├── apicategories.go │ ├── create.go │ ├── delete.go │ ├── export.go │ ├── get.go │ ├── import.go │ └── list.go │ ├── apidocs │ ├── apidocs.go │ ├── create.go │ ├── delete.go │ ├── docs.go │ ├── export.go │ ├── get.go │ ├── getdocs.go │ ├── import.go │ ├── list.go │ ├── update.go │ └── updatedocs.go │ ├── apihub │ ├── apihub.go │ ├── apis │ │ ├── apis.go │ │ ├── create.go │ │ ├── delete.go │ │ ├── export.go │ │ ├── get.go │ │ ├── list.go │ │ ├── update.go │ │ └── versions │ │ │ ├── create.go │ │ │ ├── delete.go │ │ │ ├── get.go │ │ │ ├── list.go │ │ │ ├── specs │ │ │ ├── create.go │ │ │ ├── delete.go │ │ │ ├── get.go │ │ │ ├── lint.go │ │ │ ├── list.go │ │ │ ├── specs.go │ │ │ └── update.go │ │ │ ├── update.go │ │ │ └── versions.go │ ├── attributes │ │ ├── attributes.go │ │ ├── create.go │ │ ├── delete.go │ │ ├── get.go │ │ ├── list.go │ │ └── update.go │ ├── dependencies │ │ ├── create.go │ │ ├── delete.go │ │ ├── dependencies.go │ │ ├── get.go │ │ └── list.go │ ├── deployments │ │ ├── create.go │ │ ├── delete.go │ │ ├── deployments.go │ │ ├── get.go │ │ ├── list.go │ │ └── update.go │ ├── externalapis │ │ ├── create.go │ │ ├── delete.go │ │ ├── externalapis.go │ │ ├── get.go │ │ ├── list.go │ │ └── update.go │ ├── instances │ │ ├── create.go │ │ ├── get.go │ │ ├── instances.go │ │ └── list.go │ ├── projectattachments │ │ ├── create.go │ │ ├── delete.go │ │ ├── get.go │ │ ├── list.go │ │ └── projectattachments.go │ └── projectregistrations │ │ ├── create.go │ │ ├── list.go │ │ └── projectregistrations.go │ ├── apis │ ├── apis.go │ ├── bundlecrtapis.go │ ├── cleanapi.go │ ├── cloneapi.go │ ├── common.go │ ├── crtapi.go │ ├── crtapikvm.go │ ├── crttrcapi.go │ ├── delapi.go │ ├── delapikvm.go │ ├── depapi.go │ ├── expapis.go │ ├── fetchapi.go │ ├── getapi.go │ ├── gettrcapi.go │ ├── ghcrtapis.go │ ├── gqlcrtapis.go │ ├── impapis.go │ ├── integrationapis.go │ ├── kvmapi.go │ ├── listapikvm.go │ ├── listapis.go │ ├── listdeploy.go │ ├── listtrcapi.go │ ├── moveapi.go │ ├── oascrtapisv2.go │ ├── swaggerapis.go │ ├── traceapi.go │ ├── undepapi.go │ └── updapis.go │ ├── appgroups │ ├── appgroups.go │ ├── apps.go │ ├── createkey.go │ ├── crtapp.go │ ├── crtappgroup.go │ ├── delapp.go │ ├── delappgroup.go │ ├── delkey.go │ ├── delkeyprod.go │ ├── expappgroups.go │ ├── expapps.go │ ├── getapp.go │ ├── getappgroup.go │ ├── getkey.go │ ├── impappgroup.go │ ├── impapps.go │ ├── keys.go │ ├── listappgroups.go │ ├── listapps.go │ ├── manage.go │ ├── manageapp.go │ ├── managekey.go │ ├── updateapp.go │ ├── updateappgroup.go │ └── updateappkeyprods.go │ ├── apps │ ├── apps.go │ ├── createkey.go │ ├── crtapp.go │ ├── delapp.go │ ├── deletekey.go │ ├── expapp.go │ ├── genkey.go │ ├── getapp.go │ ├── getkey.go │ ├── impapps.go │ ├── keys.go │ ├── listapp.go │ ├── manageapp.go │ ├── managekey.go │ ├── updateapp.go │ └── updatekey.go │ ├── cache │ ├── cache.go │ ├── delcache.go │ └── listcache.go │ ├── datacollectors │ ├── crtdatacollector.go │ ├── datacollectors.go │ ├── deldatacollector.go │ ├── expdatacollector.go │ ├── getdatacollector.go │ ├── impdatacolletcor.go │ └── listdatacollector.go │ ├── datastores │ ├── create.go │ ├── datastores.go │ ├── delete.go │ ├── get.go │ ├── list.go │ ├── test.go │ └── update.go │ ├── developers │ ├── adjust.go │ ├── credit.go │ ├── crtdev.go │ ├── crtsub.go │ ├── deldev.go │ ├── developers.go │ ├── expdev.go │ ├── expiresub.go │ ├── expsub.go │ ├── getdev.go │ ├── getdevapps.go │ ├── getsub.go │ ├── impdev.go │ ├── listdev.go │ ├── listsub.go │ ├── subscriptions.go │ └── upddev.go │ ├── env │ ├── archives.go │ ├── crtarchive.go │ ├── crtenv.go │ ├── crtsecactions.go │ ├── crttraceoverrides.go │ ├── debugmask.go │ ├── delarchive.go │ ├── delenv.go │ ├── deployments.go │ ├── disablesecactions.go │ ├── disablesectionscfg.go │ ├── disabletracecfg.go │ ├── enableaxob.go │ ├── enablesecactions.go │ ├── enablesectionscfg.go │ ├── env.go │ ├── expenv.go │ ├── getarchive.go │ ├── getdebugmask.go │ ├── getdeloyedconfig.go │ ├── getdeployments.go │ ├── getenv.go │ ├── getiam.go │ ├── getsecactions.go │ ├── getsecactionscfg.go │ ├── getsecin.go │ ├── getsecreport.go │ ├── gettracecfg.go │ ├── gettraceoverrides.go │ ├── iam.go │ ├── impenv.go │ ├── listarchives.go │ ├── listenv.go │ ├── listsecact.go │ ├── listsecin.go │ ├── listsecreports.go │ ├── listtraceoverrides.go │ ├── removerole.go │ ├── secactioncfg.go │ ├── secactions.go │ ├── secincidents.go │ ├── secreports.go │ ├── setadmin.go │ ├── setax.go │ ├── setcustom.go │ ├── setdebugmask.go │ ├── setdeploy.go │ ├── setprop.go │ ├── setsync.go │ ├── testiam.go │ ├── traceconfig.go │ ├── traceoverrides.go │ └── updatetracecfg.go │ ├── envgroup │ ├── attachenv.go │ ├── crtenvgroup.go │ ├── delenvgroup.go │ ├── detachenv.go │ ├── envgroup.go │ ├── getenvgroup.go │ ├── import.go │ ├── listattach.go │ ├── listenvgroup.go │ └── updateenvgroup.go │ ├── eptattachment │ ├── crteptattachment.go │ ├── deleptattachment.go │ ├── eptattachment.go │ ├── geteptattachment.go │ └── listeptattachment.go │ ├── flowhooks │ ├── crtfh.go │ ├── delfh.go │ ├── flowhooks.go │ ├── getfh.go │ └── listfh.go │ ├── go.mod │ ├── iam │ ├── addwid.go │ ├── create.go │ ├── iam.go │ └── iamUtilities.go │ ├── instances │ ├── activatenat.go │ ├── attachments.go │ ├── crtattachment.go │ ├── crtinstance.go │ ├── delattachment.go │ ├── deletenat.go │ ├── delinstance.go │ ├── getattachment.go │ ├── getinstance.go │ ├── instances.go │ ├── listattachments.go │ ├── listintance.go │ ├── listnat.go │ ├── nat.go │ ├── reservenat.go │ └── updtinstance.go │ ├── keyaliases │ ├── crtka.go │ ├── csr.go │ ├── delka.go │ ├── getcert.go │ ├── getka.go │ ├── keyaliases.go │ ├── listka.go │ └── updateka.go │ ├── keystores │ ├── crtks.go │ ├── delks.go │ ├── expks.go │ ├── getks.go │ ├── impks.go │ ├── keystores.go │ └── listks.go │ ├── kvm │ ├── crtentry.go │ ├── crtkvm.go │ ├── delentry.go │ ├── delkvm.go │ ├── entries.go │ ├── expentries.go │ ├── expkvm.go │ ├── getentry.go │ ├── impentries.go │ ├── impkvms.go │ ├── kvm.go │ ├── listentry.go │ ├── listkvm.go │ └── updentry.go │ ├── observe │ ├── jobs │ │ ├── create.go │ │ ├── delete.go │ │ ├── disable.go │ │ ├── enable.go │ │ ├── get.go │ │ ├── jobs.go │ │ └── list.go │ ├── observe.go │ └── sources │ │ ├── create.go │ │ ├── delete.go │ │ ├── get.go │ │ ├── list.go │ │ └── sources.go │ ├── ops │ ├── getops.go │ ├── listops.go │ └── ops.go │ ├── org │ ├── createorg.go │ ├── delorg.go │ ├── deployments.go │ ├── enableac.go │ ├── enableaxob.go │ ├── export.go │ ├── getdeployments.go │ ├── getorg.go │ ├── import.go │ ├── ingressconfig.go │ ├── listorgs.go │ ├── org.go │ ├── reportmonthly.go │ ├── reports.go │ ├── reportyearly.go │ ├── setaddons.go │ ├── setmart.go │ ├── setprop.go │ ├── updateorg.go │ └── variables.go │ ├── preferences │ ├── cleanpref.go │ ├── getpref.go │ ├── preferences.go │ └── setpref.go │ ├── products │ ├── attributes.go │ ├── crtprod.go │ ├── crtrateplan.go │ ├── delattrprod.go │ ├── delprod.go │ ├── delrateplan.go │ ├── expprod.go │ ├── exprateplan.go │ ├── getattrprod.go │ ├── getprod.go │ ├── getrateplan.go │ ├── impprod.go │ ├── listattrprod.go │ ├── listproducts.go │ ├── listrateplan.go │ ├── moveprod.go │ ├── products.go │ ├── rateplans.go │ ├── updattrprod.go │ └── updprod.go │ ├── projects │ ├── projects.go │ └── testiam.go │ ├── references │ ├── crtref.go │ ├── delref.go │ ├── expref.go │ ├── getref.go │ ├── impref.go │ ├── listref.go │ ├── references.go │ └── updateref.go │ ├── reports │ ├── crtreport.go │ ├── delreport.go │ ├── getreport.go │ ├── listreport.go │ └── reports.go │ ├── res │ ├── crtres.go │ ├── delres.go │ ├── getres.go │ ├── listres.go │ ├── res.go │ └── updres.go │ ├── root.go │ ├── securityprofiles │ ├── attach.go │ ├── compute.go │ ├── create.go │ ├── delete.go │ ├── detach.go │ ├── export.go │ ├── get.go │ ├── import.go │ ├── list.go │ ├── listrevisions.go │ ├── securityprofiles.go │ └── update.go │ ├── sharedflows │ ├── bundlecrtsf.go │ ├── cleansf.go │ ├── common.go │ ├── crtsf.go │ ├── delsf.go │ ├── depsf.go │ ├── expsf.go │ ├── fetchsf.go │ ├── getsf.go │ ├── ghcrtsf.go │ ├── impsfs.go │ ├── listdeploy.go │ ├── listsf.go │ ├── movesf.go │ ├── sharedflows.go │ └── undepsf.go │ ├── sites │ ├── list.go │ └── sites.go │ ├── spaces │ ├── crtspace.go │ ├── delspace.go │ ├── getiam.go │ ├── getspace.go │ ├── iam.go │ ├── listspaces.go │ ├── removerole.go │ ├── seteditor.go │ ├── setviewer.go │ ├── spaces.go │ ├── testiam.go │ └── updspace.go │ ├── sync │ ├── getsync.go │ ├── removesync.go │ ├── resetsync.go │ ├── setsync.go │ └── sync.go │ ├── targetservers │ ├── crtts.go │ ├── delts.go │ ├── expts.go │ ├── getts.go │ ├── impts.go │ ├── listts.go │ ├── targetservers.go │ └── updatets.go │ ├── token │ ├── cachetk.go │ ├── gettk.go │ └── token.go │ ├── tree │ └── tree.go │ └── utils │ └── utils.go ├── samples ├── README.md ├── apicategories.json ├── apidocs │ ├── apidocs__siteId__123.json │ └── site__siteId.json ├── apiproduct-gqlgroup.json ├── apiproduct-legacy.json ├── apiproduct-op-group.json ├── apis │ └── sample.zip ├── appgroups.json ├── apps.json ├── datacollectors.json ├── debugmask.json ├── developers.json ├── keystores.json ├── kvms │ ├── env__envname__mapname__kvmfile__0.json │ └── proxy__proxyname__mapname__kvmfile__0.json ├── petstore.yaml ├── references.json ├── sharedflows │ └── sample-sf.zip └── targetservers.json ├── test ├── README.md ├── allowed-values.json ├── api-ver.json ├── api.json ├── apigee-eg4a-err.zip ├── apigee-eg4a.zip ├── apiproduct-gqlop-group.json ├── apiproduct-grpcop-group.json ├── apiproduct-op-group-remote.json ├── apiproduct-op-group.json ├── apps_config.json ├── auth_swagger.json ├── cert.pem ├── circular-reference.json ├── debugmask.json ├── developers.json ├── dynamicroute_swagger.json ├── endpoints1.yaml ├── endpoints2.yaml ├── key.pem ├── kvm-json.json ├── md-ext1.yaml ├── md.yaml ├── md302.yaml ├── minspec-apikey.yaml ├── minspec-oauth.yaml ├── minspec-quota.yaml ├── minspec-ratelimit.yaml ├── nandan_kvmfile_1.json ├── open_weather_api.yaml ├── openapi.json ├── petstore-ext1.yaml ├── petstore-no-sec.yaml ├── petstore-v3.1.json ├── petstore-v3.1.yaml ├── petstore.json ├── petstore.yaml ├── pingstatus-v1-x.yaml ├── pkcs12.pfx ├── products.json ├── products_config.json ├── products_config_legacy.json ├── sample-cloud-build.yaml ├── schema.graphql ├── self-signed.json ├── sharedflowbundle │ ├── policies │ │ └── Verify-API-Key-1.xml │ ├── sharedflows │ │ └── default.xml │ └── test_flow.xml ├── test.js ├── test_flow.zip ├── test_proxy.zip └── windfarm3-quota.yaml ├── third-party-licenses.txt └── third-party ├── LICENSE.txt ├── cloud.google.com └── go │ └── compute │ └── metadata │ └── LICENSE ├── github.com ├── bahlo │ └── generic-list-go │ │ └── LICENSE ├── buger │ └── jsonparser │ │ └── LICENSE ├── dprotaso │ └── go-yit │ │ └── LICENSE ├── getkin │ └── kin-openapi │ │ └── LICENSE ├── ghodss │ └── yaml │ │ └── LICENSE ├── go-openapi │ ├── jsonpointer │ │ └── LICENSE │ └── swag │ │ └── LICENSE ├── google │ ├── go-github │ │ └── github │ │ │ └── LICENSE │ └── go-querystring │ │ └── query │ │ └── LICENSE ├── invopop │ └── yaml │ │ └── LICENSE ├── josharian │ └── intern │ │ └── license.md ├── lestrrat-go │ ├── blackmagic │ │ └── LICENSE │ ├── httpcc │ │ └── LICENSE │ ├── httprc │ │ └── LICENSE │ ├── iter │ │ └── LICENSE │ ├── jwx │ │ └── v2 │ │ │ └── LICENSE │ └── option │ │ └── LICENSE ├── mailru │ └── easyjson │ │ └── LICENSE ├── mitchellh │ └── mapstructure │ │ └── LICENSE ├── mohae │ └── deepcopy │ │ └── LICENSE ├── otiai10 │ └── copy │ │ └── LICENSE ├── pb33f │ ├── libopenapi-validator │ │ └── LICENSE.md │ └── libopenapi │ │ └── LICENSE ├── perimeterx │ └── marshmallow │ │ └── LICENSE ├── santhosh-tekuri │ └── jsonschema │ │ └── v6 │ │ └── LICENSE ├── spf13 │ ├── cobra │ │ └── LICENSE.txt │ └── pflag │ │ └── LICENSE ├── thedevsaddam │ └── gojsonq │ │ └── LICENSE.md ├── vmware-labs │ └── yaml-jsonpath │ │ └── pkg │ │ └── yamlpath │ │ ├── LICENSE │ │ └── NOTICE └── wk8 │ └── go-ordered-map │ └── v2 │ └── LICENSE ├── golang.org └── x │ ├── crypto │ └── LICENSE │ ├── oauth2 │ └── LICENSE │ ├── sync │ └── LICENSE │ ├── sys │ └── unix │ │ └── LICENSE │ ├── text │ └── LICENSE │ └── time │ └── rate │ └── LICENSE └── gopkg.in ├── yaml.v2 ├── LICENSE └── NOTICE └── yaml.v3 ├── LICENSE └── NOTICE /.devcontainer/devcontainer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Go", 3 | "build": { 4 | "dockerfile": "Dockerfile", 5 | "context": ".." 6 | }, 7 | "runArgs": [ 8 | "--privileged", 9 | "--network=host" 10 | ], 11 | "workspaceMount": "source=${localWorkspaceFolder},target=/${localWorkspaceFolderBasename},type=bind", 12 | "workspaceFolder": "/${localWorkspaceFolderBasename}", 13 | "customizations": { 14 | "vscode": { 15 | "extensions": [ 16 | "golang.go", 17 | "redhat.vscode-yaml", 18 | "davidanson.vscode-markdownlint" 19 | ], 20 | "settings": { 21 | "go.useLanguageServer": true, 22 | "go.lintTool": "golangci-lint" 23 | } 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /.gcloudignore: -------------------------------------------------------------------------------- 1 | # Binaries for programs and plugins 2 | *.exe 3 | *.exe~ 4 | *.dll 5 | *.so 6 | *.dylib 7 | *.zip 8 | integrationcli 9 | .DS_Store 10 | 11 | # binaries 12 | dist/ 13 | 14 | .github/ 15 | docs/ 16 | test/ 17 | 18 | README.md 19 | CONTRIBUTING.md 20 | downloadLatest.sh -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Bug 3 | about: Describe the bug 4 | title: "[BUG]" 5 | labels: '' 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Describe the bug** 11 | A clear and concise description of what the bug is. 12 | 13 | **Version** 14 | Version of the cli being used (run `apigeecli --version`) 15 | 16 | **To Reproduce** 17 | Steps to reproduce the behavior 18 | 19 | **Expected behavior** 20 | A clear and concise description of what you expected to happen. 21 | 22 | **Additional context** 23 | Add any other context about the problem here. 24 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Feature request 3 | about: Suggest an idea for the tool 4 | title: "[FR]" 5 | labels: '' 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Is your feature request related to a problem? Please describe.** 11 | A clear and concise description of what is the problem 12 | 13 | **Describe the solution you'd like** 14 | A clear and concise description of what you want to happen. 15 | 16 | **Describe alternatives you've considered** 17 | A clear and concise description of any alternative solutions or features you've considered. 18 | 19 | **Additional context** 20 | Add any other context about the feature request here. 21 | -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | # Copyright 2024 Google LLC 2 | # 3 | # Licensed under the Apache License, Version 2.0 (the "License"); 4 | # you may not use this file except in compliance with the License. 5 | # You may obtain a copy of the License at 6 | # 7 | # http://www.apache.org/licenses/LICENSE-2.0 8 | # 9 | # Unless required by applicable law or agreed to in writing, software 10 | # distributed under the License is distributed on an "AS IS" BASIS, 11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | # See the License for the specific language governing permissions and 13 | # limitations under the License. 14 | 15 | # To get started with Dependabot version updates, you'll need to specify which 16 | # package ecosystems to update and where the package manifests are located. 17 | # Please see the documentation for more information: 18 | # https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates 19 | # https://containers.dev/guide/dependabot 20 | 21 | version: 2 22 | updates: 23 | - package-ecosystem: "devcontainers" 24 | directory: "/" 25 | schedule: 26 | interval: weekly 27 | -------------------------------------------------------------------------------- /.github/workflows/golangci-lint.yml: -------------------------------------------------------------------------------- 1 | # Copyright 2023 Google LLC 2 | # 3 | # Licensed under the Apache License, Version 2.0 (the "License"); 4 | # you may not use this file except in compliance with the License. 5 | # You may obtain a copy of the License at 6 | # 7 | # http://www.apache.org/licenses/LICENSE-2.0 8 | # 9 | # Unless required by applicable law or agreed to in writing, software 10 | # distributed under the License is distributed on an "AS IS" BASIS, 11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | # See the License for the specific language governing permissions and 13 | # limitations under the License. 14 | 15 | name: golangci-lint 16 | permissions: read-all 17 | on: 18 | push: 19 | branches: 20 | - main 21 | pull_request: 22 | branches: 23 | - '**' 24 | jobs: 25 | golangci: 26 | name: lint 27 | runs-on: ubuntu-latest 28 | steps: 29 | - uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 #v5 30 | with: 31 | go-version: '1.23' 32 | cache: false 33 | - uses: actions/checkout@1e31de5234b9f8995739874a8ce0492dc87873e2 #v4 34 | - name: golangci-lint 35 | uses: golangci/golangci-lint-action@971e284b6050e8a5849b72094c50ab08da042db8 #v6.1.1 36 | with: 37 | version: latest 38 | args: --timeout=4m 39 | -------------------------------------------------------------------------------- /.github/workflows/licenses.tpl: -------------------------------------------------------------------------------- 1 | {{ range . }} 2 | ## {{ .Name }} 3 | 4 | * Name: {{ .Name }} 5 | * Version: {{ .Version }} 6 | * License: [{{ .LicenseName }}]({{ .LicenseURL }}) 7 | 8 | ``` 9 | {{ .LicenseText }} 10 | ``` 11 | {{ end }} 12 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Binaries for programs and plugins 2 | *.exe 3 | *.exe~ 4 | *.dll 5 | *.so 6 | *.dylib 7 | *.zip 8 | apigeecli 9 | .DS_Store 10 | 11 | # Test binary, built with `go test -c` 12 | *.test 13 | 14 | # Output of the go coverage tool, specifically when used with LiteIDE 15 | *.out 16 | 17 | # Dependency directories (remove the comment below to include it) 18 | vendor/ 19 | # binaries 20 | dist/ 21 | 22 | apiproxy/ 23 | 24 | 25 | # ignore changes to launch.json 26 | .vscode/launch.json 27 | 28 | #json files 29 | *.json 30 | 31 | !samples/*/*.zip 32 | !samples/*.json 33 | !samples/*/*.json 34 | !test/*.json 35 | !test/*.yaml 36 | !test/*.zip 37 | !cmd/apigeecli* 38 | !internal/apigeecli* 39 | !.vscode/launch.json 40 | !.devcontainer/devcontainer.json -------------------------------------------------------------------------------- /.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://code.visualstudio.com/docs/editor/extension-marketplace#_workspace-recommended-extensions 3 | "recommendations": [ 4 | "golang.go", 5 | "redhat.vscode-yaml", 6 | "davidanson.vscode-markdownlint" 7 | ] 8 | } 9 | -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- 1 | { 2 | // Use IntelliSense to learn about possible attributes. 3 | // Hover to view descriptions of existing attributes. 4 | // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 5 | "version": "0.2.0", 6 | "configurations": [ 7 | { 8 | "name": "Default debugger for apigeecli", 9 | "type": "go", 10 | "request": "launch", 11 | "mode": "auto", 12 | "program": "${workspaceFolder}/cmd/apigeecli/apigeecli.go", 13 | // please change these args before debugging. do not checkin changes. 14 | "args": [ 15 | "apis", 16 | "create" 17 | ] 18 | } 19 | ] 20 | } 21 | -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | // Default Editor Config 3 | "editor.formatOnSave": true, 4 | "files.trimTrailingWhitespace": true, 5 | "files.insertFinalNewline": true, 6 | "files.associations": { 7 | "*.yaml.tpl": "yaml", 8 | "*.yaml.envtpl": "yaml" 9 | }, 10 | // Golang Config 11 | "go.enableCodeLens": { 12 | "references": false, 13 | "runtest": false 14 | }, 15 | "go.useLanguageServer": true, 16 | "go.lintTool": "golangci-lint", 17 | "go.lintFlags": [ 18 | "--fast", 19 | ], 20 | "go.lintOnSave": "file", 21 | "go.formatTool": "goimports", 22 | "go.vetOnSave": "package", 23 | "[go]": { 24 | "editor.insertSpaces": true, 25 | "editor.formatOnSave": true, 26 | "editor.codeActionsOnSave": { 27 | "source.organizeImports": "explicit" 28 | }, 29 | "editor.defaultFormatter": "golang.go" 30 | }, 31 | // YAML Config 32 | "[yaml]": { 33 | "editor.formatOnSave": true 34 | }, 35 | } 36 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # How to Contribute 2 | 3 | We'd love to accept your patches and contributions to this project. There are 4 | just a few small guidelines you need to follow. 5 | 6 | ## Contributor License Agreement 7 | 8 | Contributions to this project must be accompanied by a Contributor License 9 | Agreement. You (or your employer) retain the copyright to your contribution; 10 | this simply gives us permission to use and redistribute your contributions as 11 | part of the project. Head over to to see 12 | your current agreements on file or to sign a new one. 13 | 14 | You generally only need to submit a CLA once, so if you've already submitted one 15 | (even if it was for a different project), you probably don't need to do it 16 | again. 17 | 18 | ## Code reviews 19 | 20 | All submissions, including submissions by project members, require review. We 21 | use GitHub pull requests for this purpose. Consult 22 | [GitHub Help](https://help.github.com/articles/about-pull-requests/) for more 23 | information on using pull requests. 24 | 25 | ## Community Guidelines 26 | 27 | This project follows 28 | [Google's Open Source Community Guidelines](https://opensource.google/conduct/). -------------------------------------------------------------------------------- /SECURITY.md: -------------------------------------------------------------------------------- 1 | To report a security issue, please use [https://g.co/vulnz](https://g.co/vulnz). 2 | We use g.co/vulnz for our intake, and do coordination and disclosure here on 3 | GitHub (including using GitHub Security Advisory). The Google Security Team will 4 | respond within 5 working days of your report on g.co/vulnz. 5 | -------------------------------------------------------------------------------- /cmd/apigeecli/apigeecli.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package main 16 | 17 | import ( 18 | "fmt" 19 | "internal/cmd" 20 | "os" 21 | ) 22 | 23 | // https://goreleaser.com/cookbooks/using-main.version/?h=ldflags 24 | var ( 25 | version = "dev" 26 | commit = "none" 27 | date = "unknown" 28 | ) 29 | 30 | func main() { 31 | rootCmd := cmd.GetRootCmd() 32 | rootCmd.Version = fmt.Sprintf("%s date: %s [commit: %.7s]", version, date, commit) 33 | 34 | if err := rootCmd.Execute(); err != nil { 35 | os.Exit(1) 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /cosign.pub: -------------------------------------------------------------------------------- 1 | -----BEGIN PUBLIC KEY----- 2 | MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEgjcKEyPi18vd6Zk5/ggAkH6CLSy3 3 | C8gzi5q3xsycjI7if5FABk7bfciR4+g32H8xTl4mVHhHuz6I6FBG24/nuQ== 4 | -----END PUBLIC KEY----- 5 | -------------------------------------------------------------------------------- /docs/apigeecli_apihub_apis_delete.md: -------------------------------------------------------------------------------- 1 | ## apigeecli apihub apis delete 2 | 3 | Delete an API from API Hub 4 | 5 | ### Synopsis 6 | 7 | Delete an API from API Hub 8 | 9 | ``` 10 | apigeecli apihub apis delete [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | --force force delete the API 17 | -h, --help help for delete 18 | --id string API ID 19 | ``` 20 | 21 | ### Options inherited from parent commands 22 | 23 | ``` 24 | -a, --account string Path Service Account private key in JSON 25 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 26 | --default-token Use Google default application credentials access token 27 | --disable-check Disable check for newer versions 28 | --metadata-token Metadata OAuth2 access token 29 | --no-output Disable printing all statements to stdout 30 | --no-warnings Disable printing warnings to stderr 31 | -o, --org string Apigee organization name 32 | --print-output Control printing of info log statements (default true) 33 | -r, --region string API Hub region name 34 | -t, --token string Google OAuth Token 35 | ``` 36 | 37 | ### SEE ALSO 38 | 39 | * [apigeecli apihub apis](apigeecli_apihub_apis.md) - Manage Apigee API Hub APIs 40 | 41 | ###### Auto generated by spf13/cobra on 22-Sep-2025 42 | -------------------------------------------------------------------------------- /docs/apigeecli_apihub_apis_get.md: -------------------------------------------------------------------------------- 1 | ## apigeecli apihub apis get 2 | 3 | Get details for an API 4 | 5 | ### Synopsis 6 | 7 | Get details for an API 8 | 9 | ``` 10 | apigeecli apihub apis get [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for get 17 | -i, --id string API ID 18 | ``` 19 | 20 | ### Options inherited from parent commands 21 | 22 | ``` 23 | -a, --account string Path Service Account private key in JSON 24 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 25 | --default-token Use Google default application credentials access token 26 | --disable-check Disable check for newer versions 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | -o, --org string Apigee organization name 31 | --print-output Control printing of info log statements (default true) 32 | -r, --region string API Hub region name 33 | -t, --token string Google OAuth Token 34 | ``` 35 | 36 | ### SEE ALSO 37 | 38 | * [apigeecli apihub apis](apigeecli_apihub_apis.md) - Manage Apigee API Hub APIs 39 | 40 | ###### Auto generated by spf13/cobra on 22-Sep-2025 41 | -------------------------------------------------------------------------------- /docs/apigeecli_apihub_apis_update.md: -------------------------------------------------------------------------------- 1 | ## apigeecli apihub apis update 2 | 3 | Updates an API in API Hub 4 | 5 | ### Synopsis 6 | 7 | Updates an API in API Hub 8 | 9 | ``` 10 | apigeecli apihub apis update [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -f, --file string Path to a file containing the API defintion 17 | -h, --help help for update 18 | -i, --id string API ID 19 | ``` 20 | 21 | ### Options inherited from parent commands 22 | 23 | ``` 24 | -a, --account string Path Service Account private key in JSON 25 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 26 | --default-token Use Google default application credentials access token 27 | --disable-check Disable check for newer versions 28 | --metadata-token Metadata OAuth2 access token 29 | --no-output Disable printing all statements to stdout 30 | --no-warnings Disable printing warnings to stderr 31 | -o, --org string Apigee organization name 32 | --print-output Control printing of info log statements (default true) 33 | -r, --region string API Hub region name 34 | -t, --token string Google OAuth Token 35 | ``` 36 | 37 | ### SEE ALSO 38 | 39 | * [apigeecli apihub apis](apigeecli_apihub_apis.md) - Manage Apigee API Hub APIs 40 | 41 | ###### Auto generated by spf13/cobra on 22-Sep-2025 42 | -------------------------------------------------------------------------------- /docs/apigeecli_apihub_attributes_delete.md: -------------------------------------------------------------------------------- 1 | ## apigeecli apihub attributes delete 2 | 3 | Delete an Attribute 4 | 5 | ### Synopsis 6 | 7 | Delete an Attribute 8 | 9 | ``` 10 | apigeecli apihub attributes delete [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for delete 17 | -i, --id string Attribute ID 18 | ``` 19 | 20 | ### Options inherited from parent commands 21 | 22 | ``` 23 | -a, --account string Path Service Account private key in JSON 24 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 25 | --default-token Use Google default application credentials access token 26 | --disable-check Disable check for newer versions 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | -o, --org string Apigee organization name 31 | --print-output Control printing of info log statements (default true) 32 | -r, --region string API Hub region name 33 | -t, --token string Google OAuth Token 34 | ``` 35 | 36 | ### SEE ALSO 37 | 38 | * [apigeecli apihub attributes](apigeecli_apihub_attributes.md) - Manage attributes in API Hub 39 | 40 | ###### Auto generated by spf13/cobra on 22-Sep-2025 41 | -------------------------------------------------------------------------------- /docs/apigeecli_apihub_dependencies_delete.md: -------------------------------------------------------------------------------- 1 | ## apigeecli apihub dependencies delete 2 | 3 | Delete a dependency 4 | 5 | ### Synopsis 6 | 7 | Delete a dependency 8 | 9 | ``` 10 | apigeecli apihub dependencies delete [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for delete 17 | -i, --id string Dependency ID 18 | ``` 19 | 20 | ### Options inherited from parent commands 21 | 22 | ``` 23 | -a, --account string Path Service Account private key in JSON 24 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 25 | --default-token Use Google default application credentials access token 26 | --disable-check Disable check for newer versions 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | -o, --org string Apigee organization name 31 | --print-output Control printing of info log statements (default true) 32 | -r, --region string API Hub region name 33 | -t, --token string Google OAuth Token 34 | ``` 35 | 36 | ### SEE ALSO 37 | 38 | * [apigeecli apihub dependencies](apigeecli_apihub_dependencies.md) - Manage dependencies between consumers and suppliers 39 | 40 | ###### Auto generated by spf13/cobra on 22-Sep-2025 41 | -------------------------------------------------------------------------------- /docs/apigeecli_apihub_dependencies_get.md: -------------------------------------------------------------------------------- 1 | ## apigeecli apihub dependencies get 2 | 3 | Get details for a dependency 4 | 5 | ### Synopsis 6 | 7 | Get details for a dependency 8 | 9 | ``` 10 | apigeecli apihub dependencies get [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for get 17 | -i, --id string Dependency ID 18 | ``` 19 | 20 | ### Options inherited from parent commands 21 | 22 | ``` 23 | -a, --account string Path Service Account private key in JSON 24 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 25 | --default-token Use Google default application credentials access token 26 | --disable-check Disable check for newer versions 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | -o, --org string Apigee organization name 31 | --print-output Control printing of info log statements (default true) 32 | -r, --region string API Hub region name 33 | -t, --token string Google OAuth Token 34 | ``` 35 | 36 | ### SEE ALSO 37 | 38 | * [apigeecli apihub dependencies](apigeecli_apihub_dependencies.md) - Manage dependencies between consumers and suppliers 39 | 40 | ###### Auto generated by spf13/cobra on 22-Sep-2025 41 | -------------------------------------------------------------------------------- /docs/apigeecli_apihub_deployments_delete.md: -------------------------------------------------------------------------------- 1 | ## apigeecli apihub deployments delete 2 | 3 | Delete a deployment 4 | 5 | ### Synopsis 6 | 7 | Delete a deployment 8 | 9 | ``` 10 | apigeecli apihub deployments delete [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for delete 17 | -i, --id string Deployment ID 18 | ``` 19 | 20 | ### Options inherited from parent commands 21 | 22 | ``` 23 | -a, --account string Path Service Account private key in JSON 24 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 25 | --default-token Use Google default application credentials access token 26 | --disable-check Disable check for newer versions 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | -o, --org string Apigee organization name 31 | --print-output Control printing of info log statements (default true) 32 | -r, --region string API Hub region name 33 | -t, --token string Google OAuth Token 34 | ``` 35 | 36 | ### SEE ALSO 37 | 38 | * [apigeecli apihub deployments](apigeecli_apihub_deployments.md) - Manage details of the deployment where APIs are hosted 39 | 40 | ###### Auto generated by spf13/cobra on 22-Sep-2025 41 | -------------------------------------------------------------------------------- /docs/apigeecli_apihub_deployments_get.md: -------------------------------------------------------------------------------- 1 | ## apigeecli apihub deployments get 2 | 3 | Get details for a deployment 4 | 5 | ### Synopsis 6 | 7 | Get details for a deployment 8 | 9 | ``` 10 | apigeecli apihub deployments get [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for get 17 | -i, --id string Deployment ID 18 | ``` 19 | 20 | ### Options inherited from parent commands 21 | 22 | ``` 23 | -a, --account string Path Service Account private key in JSON 24 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 25 | --default-token Use Google default application credentials access token 26 | --disable-check Disable check for newer versions 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | -o, --org string Apigee organization name 31 | --print-output Control printing of info log statements (default true) 32 | -r, --region string API Hub region name 33 | -t, --token string Google OAuth Token 34 | ``` 35 | 36 | ### SEE ALSO 37 | 38 | * [apigeecli apihub deployments](apigeecli_apihub_deployments.md) - Manage details of the deployment where APIs are hosted 39 | 40 | ###### Auto generated by spf13/cobra on 22-Sep-2025 41 | -------------------------------------------------------------------------------- /docs/apigeecli_apihub_externalapis_delete.md: -------------------------------------------------------------------------------- 1 | ## apigeecli apihub externalapis delete 2 | 3 | Delete an External API 4 | 5 | ### Synopsis 6 | 7 | Delete an an External API 8 | 9 | ``` 10 | apigeecli apihub externalapis delete [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for delete 17 | -i, --id string External API ID 18 | ``` 19 | 20 | ### Options inherited from parent commands 21 | 22 | ``` 23 | -a, --account string Path Service Account private key in JSON 24 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 25 | --default-token Use Google default application credentials access token 26 | --disable-check Disable check for newer versions 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | -o, --org string Apigee organization name 31 | --print-output Control printing of info log statements (default true) 32 | -r, --region string API Hub region name 33 | -t, --token string Google OAuth Token 34 | ``` 35 | 36 | ### SEE ALSO 37 | 38 | * [apigeecli apihub externalapis](apigeecli_apihub_externalapis.md) - Manage APIs provided by external sources 39 | 40 | ###### Auto generated by spf13/cobra on 22-Sep-2025 41 | -------------------------------------------------------------------------------- /docs/apigeecli_apihub_externalapis_get.md: -------------------------------------------------------------------------------- 1 | ## apigeecli apihub externalapis get 2 | 3 | Get details for an External API 4 | 5 | ### Synopsis 6 | 7 | Get details for an External API 8 | 9 | ``` 10 | apigeecli apihub externalapis get [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for get 17 | -i, --id string External API ID 18 | ``` 19 | 20 | ### Options inherited from parent commands 21 | 22 | ``` 23 | -a, --account string Path Service Account private key in JSON 24 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 25 | --default-token Use Google default application credentials access token 26 | --disable-check Disable check for newer versions 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | -o, --org string Apigee organization name 31 | --print-output Control printing of info log statements (default true) 32 | -r, --region string API Hub region name 33 | -t, --token string Google OAuth Token 34 | ``` 35 | 36 | ### SEE ALSO 37 | 38 | * [apigeecli apihub externalapis](apigeecli_apihub_externalapis.md) - Manage APIs provided by external sources 39 | 40 | ###### Auto generated by spf13/cobra on 22-Sep-2025 41 | -------------------------------------------------------------------------------- /docs/apigeecli_apihub_instances_get.md: -------------------------------------------------------------------------------- 1 | ## apigeecli apihub instances get 2 | 3 | Gets an API Hub Instance 4 | 5 | ### Synopsis 6 | 7 | Gets an API Hub Instance 8 | 9 | ``` 10 | apigeecli apihub instances get [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for get 17 | -i, --id string API Hub Intance Id 18 | ``` 19 | 20 | ### Options inherited from parent commands 21 | 22 | ``` 23 | -a, --account string Path Service Account private key in JSON 24 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 25 | --default-token Use Google default application credentials access token 26 | --disable-check Disable check for newer versions 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | -o, --org string Apigee organization name 31 | --print-output Control printing of info log statements (default true) 32 | -r, --region string API Hub region name 33 | -t, --token string Google OAuth Token 34 | ``` 35 | 36 | ### SEE ALSO 37 | 38 | * [apigeecli apihub instances](apigeecli_apihub_instances.md) - Manage Apigee API Hub Instances 39 | 40 | ###### Auto generated by spf13/cobra on 22-Sep-2025 41 | -------------------------------------------------------------------------------- /docs/apigeecli_apihub_instances_list.md: -------------------------------------------------------------------------------- 1 | ## apigeecli apihub instances list 2 | 3 | List API Hub Instances 4 | 5 | ### Synopsis 6 | 7 | List API Hub Instances 8 | 9 | ``` 10 | apigeecli apihub instances list [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for list 17 | ``` 18 | 19 | ### Options inherited from parent commands 20 | 21 | ``` 22 | -a, --account string Path Service Account private key in JSON 23 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 24 | --default-token Use Google default application credentials access token 25 | --disable-check Disable check for newer versions 26 | --metadata-token Metadata OAuth2 access token 27 | --no-output Disable printing all statements to stdout 28 | --no-warnings Disable printing warnings to stderr 29 | -o, --org string Apigee organization name 30 | --print-output Control printing of info log statements (default true) 31 | -r, --region string API Hub region name 32 | -t, --token string Google OAuth Token 33 | ``` 34 | 35 | ### SEE ALSO 36 | 37 | * [apigeecli apihub instances](apigeecli_apihub_instances.md) - Manage Apigee API Hub Instances 38 | 39 | ###### Auto generated by spf13/cobra on 22-Sep-2025 40 | -------------------------------------------------------------------------------- /docs/apigeecli_apis_kvm_list.md: -------------------------------------------------------------------------------- 1 | ## apigeecli apis kvm list 2 | 3 | List all KVMs for an API proxy 4 | 5 | ### Synopsis 6 | 7 | List all KVMs for an API proxy 8 | 9 | ``` 10 | apigeecli apis kvm list [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for list 17 | -p, --proxy string API Proxy name 18 | ``` 19 | 20 | ### Options inherited from parent commands 21 | 22 | ``` 23 | -a, --account string Path Service Account private key in JSON 24 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 25 | --default-token Use Google default application credentials access token 26 | --disable-check Disable check for newer versions 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | -o, --org string Apigee organization name 31 | --print-output Control printing of info log statements (default true) 32 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 33 | -t, --token string Google OAuth Token 34 | ``` 35 | 36 | ### SEE ALSO 37 | 38 | * [apigeecli apis kvm](apigeecli_apis_kvm.md) - Manage API proxy scoped KVMs 39 | 40 | ###### Auto generated by spf13/cobra on 22-Sep-2025 41 | -------------------------------------------------------------------------------- /docs/apigeecli_appgroups_export.md: -------------------------------------------------------------------------------- 1 | ## apigeecli appgroups export 2 | 3 | Export AppGroups to a file 4 | 5 | ### Synopsis 6 | 7 | Export AppGroups to a file 8 | 9 | ``` 10 | apigeecli appgroups export [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for export 17 | ``` 18 | 19 | ### Options inherited from parent commands 20 | 21 | ``` 22 | -a, --account string Path Service Account private key in JSON 23 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 24 | --default-token Use Google default application credentials access token 25 | --disable-check Disable check for newer versions 26 | --metadata-token Metadata OAuth2 access token 27 | --no-output Disable printing all statements to stdout 28 | --no-warnings Disable printing warnings to stderr 29 | -o, --org string Apigee organization name 30 | --print-output Control printing of info log statements (default true) 31 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 32 | -t, --token string Google OAuth Token 33 | ``` 34 | 35 | ### SEE ALSO 36 | 37 | * [apigeecli appgroups](apigeecli_appgroups.md) - Manage Apigee Application Groups 38 | 39 | ###### Auto generated by spf13/cobra on 22-Sep-2025 40 | -------------------------------------------------------------------------------- /docs/apigeecli_apps_export.md: -------------------------------------------------------------------------------- 1 | ## apigeecli apps export 2 | 3 | Export Developer Apps to a file 4 | 5 | ### Synopsis 6 | 7 | Export Developer Apps to a file 8 | 9 | ``` 10 | apigeecli apps export [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -c, --conn int Number of connections (default 4) 17 | -h, --help help for export 18 | ``` 19 | 20 | ### Options inherited from parent commands 21 | 22 | ``` 23 | -a, --account string Path Service Account private key in JSON 24 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 25 | --default-token Use Google default application credentials access token 26 | --disable-check Disable check for newer versions 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | -o, --org string Apigee organization name 31 | --print-output Control printing of info log statements (default true) 32 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 33 | -t, --token string Google OAuth Token 34 | ``` 35 | 36 | ### SEE ALSO 37 | 38 | * [apigeecli apps](apigeecli_apps.md) - Manage Apigee Developer Applications 39 | 40 | ###### Auto generated by spf13/cobra on 22-Sep-2025 41 | -------------------------------------------------------------------------------- /docs/apigeecli_cache_list.md: -------------------------------------------------------------------------------- 1 | ## apigeecli cache list 2 | 3 | List all caches in your environment 4 | 5 | ### Synopsis 6 | 7 | List all caches in your environment 8 | 9 | ``` 10 | apigeecli cache list [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for list 17 | ``` 18 | 19 | ### Options inherited from parent commands 20 | 21 | ``` 22 | -a, --account string Path Service Account private key in JSON 23 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 24 | --default-token Use Google default application credentials access token 25 | --disable-check Disable check for newer versions 26 | -e, --env string Apigee environment name 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | -o, --org string Apigee organization name 31 | --print-output Control printing of info log statements (default true) 32 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 33 | -t, --token string Google OAuth Token 34 | ``` 35 | 36 | ### SEE ALSO 37 | 38 | * [apigeecli cache](apigeecli_cache.md) - Manage caches within an Apigee environment 39 | 40 | ###### Auto generated by spf13/cobra on 22-Sep-2025 41 | -------------------------------------------------------------------------------- /docs/apigeecli_datacollectors_export.md: -------------------------------------------------------------------------------- 1 | ## apigeecli datacollectors export 2 | 3 | Export Data Collectors 4 | 5 | ### Synopsis 6 | 7 | Export Data Collectors 8 | 9 | ``` 10 | apigeecli datacollectors export [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for export 17 | ``` 18 | 19 | ### Options inherited from parent commands 20 | 21 | ``` 22 | -a, --account string Path Service Account private key in JSON 23 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 24 | --default-token Use Google default application credentials access token 25 | --disable-check Disable check for newer versions 26 | --metadata-token Metadata OAuth2 access token 27 | --no-output Disable printing all statements to stdout 28 | --no-warnings Disable printing warnings to stderr 29 | -o, --org string Apigee organization name 30 | --print-output Control printing of info log statements (default true) 31 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 32 | -t, --token string Google OAuth Token 33 | ``` 34 | 35 | ### SEE ALSO 36 | 37 | * [apigeecli datacollectors](apigeecli_datacollectors.md) - Manage Apigee datacollectors entities 38 | 39 | ###### Auto generated by spf13/cobra on 22-Sep-2025 40 | -------------------------------------------------------------------------------- /docs/apigeecli_datacollectors_list.md: -------------------------------------------------------------------------------- 1 | ## apigeecli datacollectors list 2 | 3 | List Data Collectors 4 | 5 | ### Synopsis 6 | 7 | List Data Collectors 8 | 9 | ``` 10 | apigeecli datacollectors list [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for list 17 | ``` 18 | 19 | ### Options inherited from parent commands 20 | 21 | ``` 22 | -a, --account string Path Service Account private key in JSON 23 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 24 | --default-token Use Google default application credentials access token 25 | --disable-check Disable check for newer versions 26 | --metadata-token Metadata OAuth2 access token 27 | --no-output Disable printing all statements to stdout 28 | --no-warnings Disable printing warnings to stderr 29 | -o, --org string Apigee organization name 30 | --print-output Control printing of info log statements (default true) 31 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 32 | -t, --token string Google OAuth Token 33 | ``` 34 | 35 | ### SEE ALSO 36 | 37 | * [apigeecli datacollectors](apigeecli_datacollectors.md) - Manage Apigee datacollectors entities 38 | 39 | ###### Auto generated by spf13/cobra on 22-Sep-2025 40 | -------------------------------------------------------------------------------- /docs/apigeecli_developers_export.md: -------------------------------------------------------------------------------- 1 | ## apigeecli developers export 2 | 3 | Export Developers to a file 4 | 5 | ### Synopsis 6 | 7 | Export Developers to a file 8 | 9 | ``` 10 | apigeecli developers export [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for export 17 | ``` 18 | 19 | ### Options inherited from parent commands 20 | 21 | ``` 22 | -a, --account string Path Service Account private key in JSON 23 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 24 | --default-token Use Google default application credentials access token 25 | --disable-check Disable check for newer versions 26 | --metadata-token Metadata OAuth2 access token 27 | --no-output Disable printing all statements to stdout 28 | --no-warnings Disable printing warnings to stderr 29 | -o, --org string Apigee organization name 30 | --print-output Control printing of info log statements (default true) 31 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 32 | -t, --token string Google OAuth Token 33 | ``` 34 | 35 | ### SEE ALSO 36 | 37 | * [apigeecli developers](apigeecli_developers.md) - Manage Apigee App Developers 38 | 39 | ###### Auto generated by spf13/cobra on 22-Sep-2025 40 | -------------------------------------------------------------------------------- /docs/apigeecli_endpoints_list.md: -------------------------------------------------------------------------------- 1 | ## apigeecli endpoints list 2 | 3 | List of service endpoints 4 | 5 | ### Synopsis 6 | 7 | Lists of service endpoints 8 | 9 | ``` 10 | apigeecli endpoints list [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for list 17 | ``` 18 | 19 | ### Options inherited from parent commands 20 | 21 | ``` 22 | -a, --account string Path Service Account private key in JSON 23 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 24 | --default-token Use Google default application credentials access token 25 | --disable-check Disable check for newer versions 26 | --metadata-token Metadata OAuth2 access token 27 | --no-output Disable printing all statements to stdout 28 | --no-warnings Disable printing warnings to stderr 29 | -o, --org string Apigee organization name 30 | --print-output Control printing of info log statements (default true) 31 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 32 | -t, --token string Google OAuth Token 33 | ``` 34 | 35 | ### SEE ALSO 36 | 37 | * [apigeecli endpoints](apigeecli_endpoints.md) - Manage Service Endpoints for PSC Consumers in Apigee 38 | 39 | ###### Auto generated by spf13/cobra on 22-Sep-2025 40 | -------------------------------------------------------------------------------- /docs/apigeecli_envgroups_get.md: -------------------------------------------------------------------------------- 1 | ## apigeecli envgroups get 2 | 3 | Gets an Environment Group 4 | 5 | ### Synopsis 6 | 7 | Gets an Environment Group 8 | 9 | ``` 10 | apigeecli envgroups get [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for get 17 | -n, --name string Name of the environment group 18 | -o, --org string Apigee organization name 19 | ``` 20 | 21 | ### Options inherited from parent commands 22 | 23 | ``` 24 | -a, --account string Path Service Account private key in JSON 25 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 26 | --default-token Use Google default application credentials access token 27 | --disable-check Disable check for newer versions 28 | --metadata-token Metadata OAuth2 access token 29 | --no-output Disable printing all statements to stdout 30 | --no-warnings Disable printing warnings to stderr 31 | --print-output Control printing of info log statements (default true) 32 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 33 | -t, --token string Google OAuth Token 34 | ``` 35 | 36 | ### SEE ALSO 37 | 38 | * [apigeecli envgroups](apigeecli_envgroups.md) - Manage Apigee environment groups 39 | 40 | ###### Auto generated by spf13/cobra on 22-Sep-2025 41 | -------------------------------------------------------------------------------- /docs/apigeecli_envgroups_list.md: -------------------------------------------------------------------------------- 1 | ## apigeecli envgroups list 2 | 3 | Returns a list of environment groups 4 | 5 | ### Synopsis 6 | 7 | Returns a list of environment groups 8 | 9 | ``` 10 | apigeecli envgroups list [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for list 17 | -o, --org string Apigee organization name 18 | ``` 19 | 20 | ### Options inherited from parent commands 21 | 22 | ``` 23 | -a, --account string Path Service Account private key in JSON 24 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 25 | --default-token Use Google default application credentials access token 26 | --disable-check Disable check for newer versions 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | --print-output Control printing of info log statements (default true) 31 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 32 | -t, --token string Google OAuth Token 33 | ``` 34 | 35 | ### SEE ALSO 36 | 37 | * [apigeecli envgroups](apigeecli_envgroups.md) - Manage Apigee environment groups 38 | 39 | ###### Auto generated by spf13/cobra on 22-Sep-2025 40 | -------------------------------------------------------------------------------- /docs/apigeecli_environments_export.md: -------------------------------------------------------------------------------- 1 | ## apigeecli environments export 2 | 3 | Export environment details to a file 4 | 5 | ### Synopsis 6 | 7 | Export environment details to a file 8 | 9 | ``` 10 | apigeecli environments export [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for export 17 | ``` 18 | 19 | ### Options inherited from parent commands 20 | 21 | ``` 22 | -a, --account string Path Service Account private key in JSON 23 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 24 | --default-token Use Google default application credentials access token 25 | --disable-check Disable check for newer versions 26 | --metadata-token Metadata OAuth2 access token 27 | --no-output Disable printing all statements to stdout 28 | --no-warnings Disable printing warnings to stderr 29 | -o, --org string Apigee organization name 30 | --print-output Control printing of info log statements (default true) 31 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 32 | -t, --token string Google OAuth Token 33 | ``` 34 | 35 | ### SEE ALSO 36 | 37 | * [apigeecli environments](apigeecli_environments.md) - Manage Apigee environments 38 | 39 | ###### Auto generated by spf13/cobra on 22-Sep-2025 40 | -------------------------------------------------------------------------------- /docs/apigeecli_environments_list.md: -------------------------------------------------------------------------------- 1 | ## apigeecli environments list 2 | 3 | List environments in an Apigee Org 4 | 5 | ### Synopsis 6 | 7 | List environments in an Apigee Org 8 | 9 | ``` 10 | apigeecli environments list [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for list 17 | ``` 18 | 19 | ### Options inherited from parent commands 20 | 21 | ``` 22 | -a, --account string Path Service Account private key in JSON 23 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 24 | --default-token Use Google default application credentials access token 25 | --disable-check Disable check for newer versions 26 | --metadata-token Metadata OAuth2 access token 27 | --no-output Disable printing all statements to stdout 28 | --no-warnings Disable printing warnings to stderr 29 | -o, --org string Apigee organization name 30 | --print-output Control printing of info log statements (default true) 31 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 32 | -t, --token string Google OAuth Token 33 | ``` 34 | 35 | ### SEE ALSO 36 | 37 | * [apigeecli environments](apigeecli_environments.md) - Manage Apigee environments 38 | 39 | ###### Auto generated by spf13/cobra on 22-Sep-2025 40 | -------------------------------------------------------------------------------- /docs/apigeecli_flowhooks_get.md: -------------------------------------------------------------------------------- 1 | ## apigeecli flowhooks get 2 | 3 | Get a flowhook 4 | 5 | ### Synopsis 6 | 7 | Get a flowhook 8 | 9 | ``` 10 | apigeecli flowhooks get [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for get 17 | -n, --name string Flowhook point 18 | ``` 19 | 20 | ### Options inherited from parent commands 21 | 22 | ``` 23 | -a, --account string Path Service Account private key in JSON 24 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 25 | --default-token Use Google default application credentials access token 26 | --disable-check Disable check for newer versions 27 | -e, --env string Apigee environment name 28 | --metadata-token Metadata OAuth2 access token 29 | --no-output Disable printing all statements to stdout 30 | --no-warnings Disable printing warnings to stderr 31 | -o, --org string Apigee organization name 32 | --print-output Control printing of info log statements (default true) 33 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 34 | -t, --token string Google OAuth Token 35 | ``` 36 | 37 | ### SEE ALSO 38 | 39 | * [apigeecli flowhooks](apigeecli_flowhooks.md) - Manage Flowhooks 40 | 41 | ###### Auto generated by spf13/cobra on 22-Sep-2025 42 | -------------------------------------------------------------------------------- /docs/apigeecli_flowhooks_list.md: -------------------------------------------------------------------------------- 1 | ## apigeecli flowhooks list 2 | 3 | List Flowhooks 4 | 5 | ### Synopsis 6 | 7 | List Flowhooks 8 | 9 | ``` 10 | apigeecli flowhooks list [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for list 17 | ``` 18 | 19 | ### Options inherited from parent commands 20 | 21 | ``` 22 | -a, --account string Path Service Account private key in JSON 23 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 24 | --default-token Use Google default application credentials access token 25 | --disable-check Disable check for newer versions 26 | -e, --env string Apigee environment name 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | -o, --org string Apigee organization name 31 | --print-output Control printing of info log statements (default true) 32 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 33 | -t, --token string Google OAuth Token 34 | ``` 35 | 36 | ### SEE ALSO 37 | 38 | * [apigeecli flowhooks](apigeecli_flowhooks.md) - Manage Flowhooks 39 | 40 | ###### Auto generated by spf13/cobra on 22-Sep-2025 41 | -------------------------------------------------------------------------------- /docs/apigeecli_iam.md: -------------------------------------------------------------------------------- 1 | ## apigeecli iam 2 | 3 | Manage IAM permissions for Apigee 4 | 5 | ### Synopsis 6 | 7 | Manage IAM permissions for Apigee. The SA to run this command requires Security Admin, Create Service Accounts and Service Account Key Admin roles 8 | 9 | ### Options 10 | 11 | ``` 12 | -h, --help help for iam 13 | ``` 14 | 15 | ### Options inherited from parent commands 16 | 17 | ``` 18 | -a, --account string Path Service Account private key in JSON 19 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 20 | --default-token Use Google default application credentials access token 21 | --disable-check Disable check for newer versions 22 | --metadata-token Metadata OAuth2 access token 23 | --no-output Disable printing all statements to stdout 24 | --no-warnings Disable printing warnings to stderr 25 | --print-output Control printing of info log statements (default true) 26 | -t, --token string Google OAuth Token 27 | ``` 28 | 29 | ### SEE ALSO 30 | 31 | * [apigeecli](apigeecli.md) - Utility to work with Apigee APIs. 32 | * [apigeecli iam create](apigeecli_iam_create.md) - Create a new IAM Service Account with permissions for Apigee Runtime 33 | 34 | ###### Auto generated by spf13/cobra on 22-Sep-2025 35 | -------------------------------------------------------------------------------- /docs/apigeecli_instances_get.md: -------------------------------------------------------------------------------- 1 | ## apigeecli instances get 2 | 3 | Get an Instance 4 | 5 | ### Synopsis 6 | 7 | Get an Instance 8 | 9 | ``` 10 | apigeecli instances get [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for get 17 | -n, --name string Name of the instance 18 | -o, --org string Apigee organization name 19 | ``` 20 | 21 | ### Options inherited from parent commands 22 | 23 | ``` 24 | -a, --account string Path Service Account private key in JSON 25 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 26 | --default-token Use Google default application credentials access token 27 | --disable-check Disable check for newer versions 28 | --metadata-token Metadata OAuth2 access token 29 | --no-output Disable printing all statements to stdout 30 | --no-warnings Disable printing warnings to stderr 31 | --print-output Control printing of info log statements (default true) 32 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 33 | -t, --token string Google OAuth Token 34 | ``` 35 | 36 | ### SEE ALSO 37 | 38 | * [apigeecli instances](apigeecli_instances.md) - Manage Apigee runtime instances 39 | 40 | ###### Auto generated by spf13/cobra on 22-Sep-2025 41 | -------------------------------------------------------------------------------- /docs/apigeecli_instances_list.md: -------------------------------------------------------------------------------- 1 | ## apigeecli instances list 2 | 3 | Returns a list of environment groups 4 | 5 | ### Synopsis 6 | 7 | Returns a list of environment groups 8 | 9 | ``` 10 | apigeecli instances list [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for list 17 | -o, --org string Apigee organization name 18 | ``` 19 | 20 | ### Options inherited from parent commands 21 | 22 | ``` 23 | -a, --account string Path Service Account private key in JSON 24 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 25 | --default-token Use Google default application credentials access token 26 | --disable-check Disable check for newer versions 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | --print-output Control printing of info log statements (default true) 31 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 32 | -t, --token string Google OAuth Token 33 | ``` 34 | 35 | ### SEE ALSO 36 | 37 | * [apigeecli instances](apigeecli_instances.md) - Manage Apigee runtime instances 38 | 39 | ###### Auto generated by spf13/cobra on 22-Sep-2025 40 | -------------------------------------------------------------------------------- /docs/apigeecli_keystores_list.md: -------------------------------------------------------------------------------- 1 | ## apigeecli keystores list 2 | 3 | List Key Stores 4 | 5 | ### Synopsis 6 | 7 | List Key Stores 8 | 9 | ``` 10 | apigeecli keystores list [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for list 17 | ``` 18 | 19 | ### Options inherited from parent commands 20 | 21 | ``` 22 | -a, --account string Path Service Account private key in JSON 23 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 24 | --default-token Use Google default application credentials access token 25 | --disable-check Disable check for newer versions 26 | -e, --env string Apigee environment name 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | -o, --org string Apigee organization name 31 | --print-output Control printing of info log statements (default true) 32 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 33 | -t, --token string Google OAuth Token 34 | ``` 35 | 36 | ### SEE ALSO 37 | 38 | * [apigeecli keystores](apigeecli_keystores.md) - Manage Key Stores 39 | 40 | ###### Auto generated by spf13/cobra on 22-Sep-2025 41 | -------------------------------------------------------------------------------- /docs/apigeecli_kvms_list.md: -------------------------------------------------------------------------------- 1 | ## apigeecli kvms list 2 | 3 | Returns a list of KVMs 4 | 5 | ### Synopsis 6 | 7 | Returns a list of KVMs 8 | 9 | ``` 10 | apigeecli kvms list [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -e, --env string Environment name 17 | -h, --help help for list 18 | -p, --proxy string API Proxy name 19 | ``` 20 | 21 | ### Options inherited from parent commands 22 | 23 | ``` 24 | -a, --account string Path Service Account private key in JSON 25 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 26 | --default-token Use Google default application credentials access token 27 | --disable-check Disable check for newer versions 28 | --metadata-token Metadata OAuth2 access token 29 | --no-output Disable printing all statements to stdout 30 | --no-warnings Disable printing warnings to stderr 31 | -o, --org string Apigee organization name 32 | --print-output Control printing of info log statements (default true) 33 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 34 | -t, --token string Google OAuth Token 35 | ``` 36 | 37 | ### SEE ALSO 38 | 39 | * [apigeecli kvms](apigeecli_kvms.md) - Manage Key Value Maps 40 | 41 | ###### Auto generated by spf13/cobra on 22-Sep-2025 42 | -------------------------------------------------------------------------------- /docs/apigeecli_operations_get.md: -------------------------------------------------------------------------------- 1 | ## apigeecli operations get 2 | 3 | Get operation of an org 4 | 5 | ### Synopsis 6 | 7 | Get operation of an org 8 | 9 | ``` 10 | apigeecli operations get [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for get 17 | -n, --name string operation name 18 | ``` 19 | 20 | ### Options inherited from parent commands 21 | 22 | ``` 23 | -a, --account string Path Service Account private key in JSON 24 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 25 | --default-token Use Google default application credentials access token 26 | --disable-check Disable check for newer versions 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | -o, --org string Apigee organization name 31 | --print-output Control printing of info log statements (default true) 32 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 33 | -t, --token string Google OAuth Token 34 | ``` 35 | 36 | ### SEE ALSO 37 | 38 | * [apigeecli operations](apigeecli_operations.md) - View Apigee Operations 39 | 40 | ###### Auto generated by spf13/cobra on 22-Sep-2025 41 | -------------------------------------------------------------------------------- /docs/apigeecli_organizations_get.md: -------------------------------------------------------------------------------- 1 | ## apigeecli organizations get 2 | 3 | Show details of an Apigee Org 4 | 5 | ### Synopsis 6 | 7 | Show details of an Apigee Org 8 | 9 | ``` 10 | apigeecli organizations get [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for get 17 | -o, --org string Apigee organization name 18 | ``` 19 | 20 | ### Options inherited from parent commands 21 | 22 | ``` 23 | -a, --account string Path Service Account private key in JSON 24 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 25 | --default-token Use Google default application credentials access token 26 | --disable-check Disable check for newer versions 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | --print-output Control printing of info log statements (default true) 31 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 32 | -t, --token string Google OAuth Token 33 | ``` 34 | 35 | ### SEE ALSO 36 | 37 | * [apigeecli organizations](apigeecli_organizations.md) - Manage Apigee Orgs 38 | 39 | ###### Auto generated by spf13/cobra on 22-Sep-2025 40 | -------------------------------------------------------------------------------- /docs/apigeecli_organizations_list.md: -------------------------------------------------------------------------------- 1 | ## apigeecli organizations list 2 | 3 | List the Apigee organizations 4 | 5 | ### Synopsis 6 | 7 | List the Apigee organizations, and the related projects that a user has permissions for 8 | 9 | ``` 10 | apigeecli organizations list [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for list 17 | ``` 18 | 19 | ### Options inherited from parent commands 20 | 21 | ``` 22 | -a, --account string Path Service Account private key in JSON 23 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 24 | --default-token Use Google default application credentials access token 25 | --disable-check Disable check for newer versions 26 | --metadata-token Metadata OAuth2 access token 27 | --no-output Disable printing all statements to stdout 28 | --no-warnings Disable printing warnings to stderr 29 | --print-output Control printing of info log statements (default true) 30 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 31 | -t, --token string Google OAuth Token 32 | ``` 33 | 34 | ### SEE ALSO 35 | 36 | * [apigeecli organizations](apigeecli_organizations.md) - Manage Apigee Orgs 37 | 38 | ###### Auto generated by spf13/cobra on 22-Sep-2025 39 | -------------------------------------------------------------------------------- /docs/apigeecli_preferences_get.md: -------------------------------------------------------------------------------- 1 | ## apigeecli preferences get 2 | 3 | Get preferences for apigeecli 4 | 5 | ### Synopsis 6 | 7 | Get preferences for apigeecli 8 | 9 | ``` 10 | apigeecli preferences get [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for get 17 | ``` 18 | 19 | ### Options inherited from parent commands 20 | 21 | ``` 22 | -a, --account string Path Service Account private key in JSON 23 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 24 | --default-token Use Google default application credentials access token 25 | --disable-check Disable check for newer versions 26 | --metadata-token Metadata OAuth2 access token 27 | --no-output Disable printing all statements to stdout 28 | --no-warnings Disable printing warnings to stderr 29 | --print-output Control printing of info log statements (default true) 30 | -t, --token string Google OAuth Token 31 | ``` 32 | 33 | ### SEE ALSO 34 | 35 | * [apigeecli preferences](apigeecli_preferences.md) - Manage apigeecli preferences 36 | 37 | ###### Auto generated by spf13/cobra on 22-Sep-2025 38 | -------------------------------------------------------------------------------- /docs/apigeecli_preferences_remove.md: -------------------------------------------------------------------------------- 1 | ## apigeecli preferences remove 2 | 3 | Remove preferences file from the home dir 4 | 5 | ### Synopsis 6 | 7 | Remove preferences file from the home dir 8 | 9 | ``` 10 | apigeecli preferences remove [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for remove 17 | ``` 18 | 19 | ### Options inherited from parent commands 20 | 21 | ``` 22 | -a, --account string Path Service Account private key in JSON 23 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 24 | --default-token Use Google default application credentials access token 25 | --disable-check Disable check for newer versions 26 | --metadata-token Metadata OAuth2 access token 27 | --no-output Disable printing all statements to stdout 28 | --no-warnings Disable printing warnings to stderr 29 | --print-output Control printing of info log statements (default true) 30 | -t, --token string Google OAuth Token 31 | ``` 32 | 33 | ### SEE ALSO 34 | 35 | * [apigeecli preferences](apigeecli_preferences.md) - Manage apigeecli preferences 36 | 37 | ###### Auto generated by spf13/cobra on 22-Sep-2025 38 | -------------------------------------------------------------------------------- /docs/apigeecli_projects.md: -------------------------------------------------------------------------------- 1 | ## apigeecli projects 2 | 3 | Manage GCP Projects that have Apigee enabled 4 | 5 | ### Synopsis 6 | 7 | Manage GCP Projects that have Apigee enabled 8 | 9 | ### Options 10 | 11 | ``` 12 | -h, --help help for projects 13 | ``` 14 | 15 | ### Options inherited from parent commands 16 | 17 | ``` 18 | -a, --account string Path Service Account private key in JSON 19 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 20 | --default-token Use Google default application credentials access token 21 | --disable-check Disable check for newer versions 22 | --metadata-token Metadata OAuth2 access token 23 | --no-output Disable printing all statements to stdout 24 | --no-warnings Disable printing warnings to stderr 25 | --print-output Control printing of info log statements (default true) 26 | -t, --token string Google OAuth Token 27 | ``` 28 | 29 | ### SEE ALSO 30 | 31 | * [apigeecli](apigeecli.md) - Utility to work with Apigee APIs. 32 | * [apigeecli projects testiam](apigeecli_projects_testiam.md) - Test IAM policy for a GCP Project 33 | 34 | ###### Auto generated by spf13/cobra on 22-Sep-2025 35 | -------------------------------------------------------------------------------- /docs/apigeecli_projects_testiam.md: -------------------------------------------------------------------------------- 1 | ## apigeecli projects testiam 2 | 3 | Test IAM policy for a GCP Project 4 | 5 | ### Synopsis 6 | 7 | Test IAM policy for a GCP Project 8 | 9 | ``` 10 | apigeecli projects testiam [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for testiam 17 | -p, --prj string GCP Project ID 18 | ``` 19 | 20 | ### Options inherited from parent commands 21 | 22 | ``` 23 | -a, --account string Path Service Account private key in JSON 24 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 25 | --default-token Use Google default application credentials access token 26 | --disable-check Disable check for newer versions 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | --print-output Control printing of info log statements (default true) 31 | -t, --token string Google OAuth Token 32 | ``` 33 | 34 | ### SEE ALSO 35 | 36 | * [apigeecli projects](apigeecli_projects.md) - Manage GCP Projects that have Apigee enabled 37 | 38 | ###### Auto generated by spf13/cobra on 22-Sep-2025 39 | -------------------------------------------------------------------------------- /docs/apigeecli_reports_delete.md: -------------------------------------------------------------------------------- 1 | ## apigeecli reports delete 2 | 3 | Delete a custom report 4 | 5 | ### Synopsis 6 | 7 | Delete a custom report 8 | 9 | ``` 10 | apigeecli reports delete [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for delete 17 | -n, --name string Name of the custom report 18 | ``` 19 | 20 | ### Options inherited from parent commands 21 | 22 | ``` 23 | -a, --account string Path Service Account private key in JSON 24 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 25 | --default-token Use Google default application credentials access token 26 | --disable-check Disable check for newer versions 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | -o, --org string Apigee organization name 31 | --print-output Control printing of info log statements (default true) 32 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 33 | -t, --token string Google OAuth Token 34 | ``` 35 | 36 | ### SEE ALSO 37 | 38 | * [apigeecli reports](apigeecli_reports.md) - Manage Analytics custom reports 39 | 40 | ###### Auto generated by spf13/cobra on 22-Sep-2025 41 | -------------------------------------------------------------------------------- /docs/apigeecli_reports_get.md: -------------------------------------------------------------------------------- 1 | ## apigeecli reports get 2 | 3 | Get details for a custom report 4 | 5 | ### Synopsis 6 | 7 | Get details for a custom report 8 | 9 | ``` 10 | apigeecli reports get [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for get 17 | -n, --name string Name of the custom report 18 | ``` 19 | 20 | ### Options inherited from parent commands 21 | 22 | ``` 23 | -a, --account string Path Service Account private key in JSON 24 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 25 | --default-token Use Google default application credentials access token 26 | --disable-check Disable check for newer versions 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | -o, --org string Apigee organization name 31 | --print-output Control printing of info log statements (default true) 32 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 33 | -t, --token string Google OAuth Token 34 | ``` 35 | 36 | ### SEE ALSO 37 | 38 | * [apigeecli reports](apigeecli_reports.md) - Manage Analytics custom reports 39 | 40 | ###### Auto generated by spf13/cobra on 22-Sep-2025 41 | -------------------------------------------------------------------------------- /docs/apigeecli_sites.md: -------------------------------------------------------------------------------- 1 | ## apigeecli sites 2 | 3 | Manage Apigee API Portals 4 | 5 | ### Synopsis 6 | 7 | Manage Apigee API Portals 8 | 9 | ### Options 10 | 11 | ``` 12 | -h, --help help for sites 13 | -o, --org string Apigee organization name 14 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 15 | ``` 16 | 17 | ### Options inherited from parent commands 18 | 19 | ``` 20 | -a, --account string Path Service Account private key in JSON 21 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 22 | --default-token Use Google default application credentials access token 23 | --disable-check Disable check for newer versions 24 | --metadata-token Metadata OAuth2 access token 25 | --no-output Disable printing all statements to stdout 26 | --no-warnings Disable printing warnings to stderr 27 | --print-output Control printing of info log statements (default true) 28 | -t, --token string Google OAuth Token 29 | ``` 30 | 31 | ### SEE ALSO 32 | 33 | * [apigeecli](apigeecli.md) - Utility to work with Apigee APIs. 34 | * [apigeecli sites list](apigeecli_sites_list.md) - Returns the API Portals associated with the org 35 | 36 | ###### Auto generated by spf13/cobra on 22-Sep-2025 37 | -------------------------------------------------------------------------------- /docs/apigeecli_sites_list.md: -------------------------------------------------------------------------------- 1 | ## apigeecli sites list 2 | 3 | Returns the API Portals associated with the org 4 | 5 | ### Synopsis 6 | 7 | Returns the API Portals associated with the org 8 | 9 | ``` 10 | apigeecli sites list [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for list 17 | ``` 18 | 19 | ### Options inherited from parent commands 20 | 21 | ``` 22 | -a, --account string Path Service Account private key in JSON 23 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 24 | --default-token Use Google default application credentials access token 25 | --disable-check Disable check for newer versions 26 | --metadata-token Metadata OAuth2 access token 27 | --no-output Disable printing all statements to stdout 28 | --no-warnings Disable printing warnings to stderr 29 | -o, --org string Apigee organization name 30 | --print-output Control printing of info log statements (default true) 31 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 32 | -t, --token string Google OAuth Token 33 | ``` 34 | 35 | ### SEE ALSO 36 | 37 | * [apigeecli sites](apigeecli_sites.md) - Manage Apigee API Portals 38 | 39 | ###### Auto generated by spf13/cobra on 22-Sep-2025 40 | -------------------------------------------------------------------------------- /docs/apigeecli_spaces_delete.md: -------------------------------------------------------------------------------- 1 | ## apigeecli spaces delete 2 | 3 | Delete an Apigee Space 4 | 5 | ### Synopsis 6 | 7 | Delete an Apigee Space 8 | 9 | ``` 10 | apigeecli spaces delete [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for delete 17 | -n, --name string Name of the space 18 | ``` 19 | 20 | ### Options inherited from parent commands 21 | 22 | ``` 23 | -a, --account string Path Service Account private key in JSON 24 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 25 | --default-token Use Google default application credentials access token 26 | --disable-check Disable check for newer versions 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | -o, --org string Apigee organization name 31 | --print-output Control printing of info log statements (default true) 32 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 33 | -t, --token string Google OAuth Token 34 | ``` 35 | 36 | ### SEE ALSO 37 | 38 | * [apigeecli spaces](apigeecli_spaces.md) - Manage Apigee Spaces 39 | 40 | ###### Auto generated by spf13/cobra on 22-Sep-2025 41 | -------------------------------------------------------------------------------- /docs/apigeecli_spaces_get.md: -------------------------------------------------------------------------------- 1 | ## apigeecli spaces get 2 | 3 | Get an Apigee Space 4 | 5 | ### Synopsis 6 | 7 | Get an Apigee Space 8 | 9 | ``` 10 | apigeecli spaces get [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for get 17 | -n, --name string Name of the space 18 | ``` 19 | 20 | ### Options inherited from parent commands 21 | 22 | ``` 23 | -a, --account string Path Service Account private key in JSON 24 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 25 | --default-token Use Google default application credentials access token 26 | --disable-check Disable check for newer versions 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | -o, --org string Apigee organization name 31 | --print-output Control printing of info log statements (default true) 32 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 33 | -t, --token string Google OAuth Token 34 | ``` 35 | 36 | ### SEE ALSO 37 | 38 | * [apigeecli spaces](apigeecli_spaces.md) - Manage Apigee Spaces 39 | 40 | ###### Auto generated by spf13/cobra on 22-Sep-2025 41 | -------------------------------------------------------------------------------- /docs/apigeecli_spaces_list.md: -------------------------------------------------------------------------------- 1 | ## apigeecli spaces list 2 | 3 | List Apigee Spaces 4 | 5 | ### Synopsis 6 | 7 | List Apigee Spaces 8 | 9 | ``` 10 | apigeecli spaces list [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for list 17 | ``` 18 | 19 | ### Options inherited from parent commands 20 | 21 | ``` 22 | -a, --account string Path Service Account private key in JSON 23 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 24 | --default-token Use Google default application credentials access token 25 | --disable-check Disable check for newer versions 26 | --metadata-token Metadata OAuth2 access token 27 | --no-output Disable printing all statements to stdout 28 | --no-warnings Disable printing warnings to stderr 29 | -o, --org string Apigee organization name 30 | --print-output Control printing of info log statements (default true) 31 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 32 | -t, --token string Google OAuth Token 33 | ``` 34 | 35 | ### SEE ALSO 36 | 37 | * [apigeecli spaces](apigeecli_spaces.md) - Manage Apigee Spaces 38 | 39 | ###### Auto generated by spf13/cobra on 22-Sep-2025 40 | -------------------------------------------------------------------------------- /docs/apigeecli_targetservers_list.md: -------------------------------------------------------------------------------- 1 | ## apigeecli targetservers list 2 | 3 | List Target Servers 4 | 5 | ### Synopsis 6 | 7 | List Target Servers 8 | 9 | ``` 10 | apigeecli targetservers list [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for list 17 | ``` 18 | 19 | ### Options inherited from parent commands 20 | 21 | ``` 22 | -a, --account string Path Service Account private key in JSON 23 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 24 | --default-token Use Google default application credentials access token 25 | --disable-check Disable check for newer versions 26 | -e, --env string Apigee environment name 27 | --metadata-token Metadata OAuth2 access token 28 | --no-output Disable printing all statements to stdout 29 | --no-warnings Disable printing warnings to stderr 30 | -o, --org string Apigee organization name 31 | --print-output Control printing of info log statements (default true) 32 | -r, --region string Apigee control plane region name; default is https://apigee.googleapis.com 33 | -t, --token string Google OAuth Token 34 | ``` 35 | 36 | ### SEE ALSO 37 | 38 | * [apigeecli targetservers](apigeecli_targetservers.md) - Manage Target Servers 39 | 40 | ###### Auto generated by spf13/cobra on 22-Sep-2025 41 | -------------------------------------------------------------------------------- /docs/apigeecli_token.md: -------------------------------------------------------------------------------- 1 | ## apigeecli token 2 | 3 | Manage OAuth 2.0 access tokens 4 | 5 | ### Synopsis 6 | 7 | Manage OAuth 2.0 access tokens 8 | 9 | ### Options 10 | 11 | ``` 12 | -h, --help help for token 13 | ``` 14 | 15 | ### Options inherited from parent commands 16 | 17 | ``` 18 | -a, --account string Path Service Account private key in JSON 19 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 20 | --default-token Use Google default application credentials access token 21 | --disable-check Disable check for newer versions 22 | --metadata-token Metadata OAuth2 access token 23 | --no-output Disable printing all statements to stdout 24 | --no-warnings Disable printing warnings to stderr 25 | --print-output Control printing of info log statements (default true) 26 | -t, --token string Google OAuth Token 27 | ``` 28 | 29 | ### SEE ALSO 30 | 31 | * [apigeecli](apigeecli.md) - Utility to work with Apigee APIs. 32 | * [apigeecli token cache](apigeecli_token_cache.md) - Generate and cache a new access token 33 | * [apigeecli token gen](apigeecli_token_gen.md) - Generate a new access token 34 | 35 | ###### Auto generated by spf13/cobra on 22-Sep-2025 36 | -------------------------------------------------------------------------------- /docs/apigeecli_token_cache.md: -------------------------------------------------------------------------------- 1 | ## apigeecli token cache 2 | 3 | Generate and cache a new access token 4 | 5 | ### Synopsis 6 | 7 | Generate and cache a new access token 8 | 9 | ``` 10 | apigeecli token cache [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for cache 17 | ``` 18 | 19 | ### Options inherited from parent commands 20 | 21 | ``` 22 | -a, --account string Path Service Account private key in JSON 23 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 24 | --default-token Use Google default application credentials access token 25 | --disable-check Disable check for newer versions 26 | --metadata-token Metadata OAuth2 access token 27 | --no-output Disable printing all statements to stdout 28 | --no-warnings Disable printing warnings to stderr 29 | --print-output Control printing of info log statements (default true) 30 | -t, --token string Google OAuth Token 31 | ``` 32 | 33 | ### SEE ALSO 34 | 35 | * [apigeecli token](apigeecli_token.md) - Manage OAuth 2.0 access tokens 36 | 37 | ###### Auto generated by spf13/cobra on 22-Sep-2025 38 | -------------------------------------------------------------------------------- /docs/apigeecli_token_gen.md: -------------------------------------------------------------------------------- 1 | ## apigeecli token gen 2 | 3 | Generate a new access token 4 | 5 | ### Synopsis 6 | 7 | Generate a new access token 8 | 9 | ``` 10 | apigeecli token gen [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for gen 17 | ``` 18 | 19 | ### Options inherited from parent commands 20 | 21 | ``` 22 | -a, --account string Path Service Account private key in JSON 23 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 24 | --default-token Use Google default application credentials access token 25 | --disable-check Disable check for newer versions 26 | --metadata-token Metadata OAuth2 access token 27 | --no-output Disable printing all statements to stdout 28 | --no-warnings Disable printing warnings to stderr 29 | --print-output Control printing of info log statements (default true) 30 | -t, --token string Google OAuth Token 31 | ``` 32 | 33 | ### SEE ALSO 34 | 35 | * [apigeecli token](apigeecli_token.md) - Manage OAuth 2.0 access tokens 36 | 37 | ###### Auto generated by spf13/cobra on 22-Sep-2025 38 | -------------------------------------------------------------------------------- /docs/apigeecli_tree.md: -------------------------------------------------------------------------------- 1 | ## apigeecli tree 2 | 3 | Prints apigeecli command Tree 4 | 5 | ### Synopsis 6 | 7 | Prints apigeecli command Tree 8 | 9 | ``` 10 | apigeecli tree [flags] 11 | ``` 12 | 13 | ### Options 14 | 15 | ``` 16 | -h, --help help for tree 17 | ``` 18 | 19 | ### Options inherited from parent commands 20 | 21 | ``` 22 | -a, --account string Path Service Account private key in JSON 23 | --api api Sets the control plane API. Must be one of prod, autopush or staging; default is prod 24 | --default-token Use Google default application credentials access token 25 | --disable-check Disable check for newer versions 26 | --metadata-token Metadata OAuth2 access token 27 | --no-output Disable printing all statements to stdout 28 | --no-warnings Disable printing warnings to stderr 29 | --print-output Control printing of info log statements (default true) 30 | -t, --token string Google OAuth Token 31 | ``` 32 | 33 | ### SEE ALSO 34 | 35 | * [apigeecli](apigeecli.md) - Utility to work with Apigee APIs. 36 | 37 | ###### Auto generated by spf13/cobra on 22-Sep-2025 38 | -------------------------------------------------------------------------------- /internal/apiclient/go.mod: -------------------------------------------------------------------------------- 1 | module apiclient 2 | 3 | go 1.23.2 4 | -------------------------------------------------------------------------------- /internal/apiclient/lrowait.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package apiclient 16 | 17 | import ( 18 | "time" 19 | ) 20 | 21 | func Every(duration time.Duration, work func(time.Time) bool) chan bool { 22 | ticker := time.NewTicker(duration) 23 | stop := make(chan bool, 1) 24 | 25 | go func() { 26 | for { 27 | select { 28 | case time := <-ticker.C: 29 | if !work(time) { 30 | stop <- true 31 | } 32 | case <-stop: 33 | return 34 | } 35 | } 36 | }() 37 | 38 | return stop 39 | } 40 | -------------------------------------------------------------------------------- /internal/apiclient/utils.go: -------------------------------------------------------------------------------- 1 | // Copyright 2024 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package apiclient 16 | 17 | import "reflect" 18 | 19 | // from: https://mangatmodi.medium.com/go-check-nil-interface-the-right-way-d142776edef1 20 | func IsNil(i interface{}) bool { 21 | if i == nil { 22 | return true 23 | } 24 | switch reflect.TypeOf(i).Kind() { 25 | case reflect.Ptr, reflect.Map, reflect.Array, reflect.Chan, reflect.Slice: 26 | return reflect.ValueOf(i).IsNil() 27 | } 28 | return false 29 | } 30 | -------------------------------------------------------------------------------- /internal/bundlegen/generategql_test.go: -------------------------------------------------------------------------------- 1 | // Copyright 2024 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package bundlegen 16 | 17 | import ( 18 | "testing" 19 | ) 20 | 21 | func TestGenerateAPIProxyDefFromGQL(t *testing.T) { 22 | skipPolicy := false 23 | name := "test" 24 | desc := "desc" 25 | gqlDocName := "schema" 26 | apiKeyLocation := "request.header.x-api-key" 27 | addCORS := true 28 | basePath := "" 29 | targetURL := "http://api.example.com" 30 | targetURLRef := "" 31 | if err := GenerateAPIProxyDefFromGQL(name, 32 | desc, 33 | gqlDocName, 34 | basePath, 35 | apiKeyLocation, 36 | skipPolicy, 37 | addCORS, 38 | targetURLRef, 39 | targetURL); err != nil { 40 | t.Fatalf("%v", err) 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /internal/bundlegen/generateint_test.go: -------------------------------------------------------------------------------- 1 | // Copyright 2024 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package bundlegen 16 | 17 | import "testing" 18 | 19 | func TestGenerateIntegrationAPIProxy(t *testing.T) { 20 | name := "test" 21 | desc := "desc" 22 | apiTrigger := "test" 23 | if err := GenerateIntegrationAPIProxy(name, desc, apiTrigger); err != nil { 24 | t.Fatalf("%v", err) 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /internal/bundlegen/go.mod: -------------------------------------------------------------------------------- 1 | module bundlegen 2 | 3 | go 1.23.2 4 | -------------------------------------------------------------------------------- /internal/bundlegen/options.go: -------------------------------------------------------------------------------- 1 | // Copyright 2023 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package bundlegen 16 | 17 | type IntegrationBackendOptions struct { 18 | IntegrationName string 19 | TriggerName string 20 | } 21 | 22 | type HttpBackendOptions struct { 23 | OasGoogleAcessTokenScopeLiteral string 24 | OasGoogleIDTokenAudLiteral string 25 | OasGoogleIDTokenAudRef string 26 | OasTargetURLRef string 27 | TargetURL string 28 | TargetServerName string 29 | } 30 | 31 | type TargetOptions struct { 32 | IntegrationBackend IntegrationBackendOptions 33 | HttpBackend HttpBackendOptions 34 | } 35 | -------------------------------------------------------------------------------- /internal/client/cache/cache_test.go: -------------------------------------------------------------------------------- 1 | // Copyright 2024 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package cache 16 | 17 | import ( 18 | "internal/client/clienttest" 19 | "testing" 20 | ) 21 | 22 | func TestList(t *testing.T) { 23 | if err := clienttest.TestSetup(clienttest.ENV_REQD, 24 | clienttest.SITEID_NOT_REQD, clienttest.CLIPATH_NOT_REQD); err != nil { 25 | t.Fatalf("%v", err) 26 | } 27 | if _, err := List(); err != nil { 28 | t.Fatalf("%v", err) 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /internal/client/go.mod: -------------------------------------------------------------------------------- 1 | module client 2 | 3 | go 1.23.2 4 | -------------------------------------------------------------------------------- /internal/client/operations/operations_test.go: -------------------------------------------------------------------------------- 1 | // Copyright 2024 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package operations 16 | 17 | import ( 18 | "internal/client/clienttest" 19 | "testing" 20 | ) 21 | 22 | func TestList(t *testing.T) { 23 | if err := clienttest.TestSetup(clienttest.ENV_NOT_REQD, 24 | clienttest.SITEID_NOT_REQD, clienttest.CLIPATH_NOT_REQD); err != nil { 25 | t.Fatalf("%v", err) 26 | } 27 | if _, err := List("FINISHED", Both); err != nil { 28 | t.Fatalf("%v", err) 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /internal/client/orgs/reports_test.go: -------------------------------------------------------------------------------- 1 | // Copyright 2024 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package orgs 16 | 17 | import ( 18 | "internal/client/clienttest" 19 | "testing" 20 | "time" 21 | ) 22 | 23 | func TestTotalAPICallsInMonth(t *testing.T) { 24 | if err := clienttest.TestSetup(clienttest.ENV_NOT_REQD, 25 | clienttest.SITEID_NOT_REQD, clienttest.CLIPATH_NOT_REQD); err != nil { 26 | t.Fatalf("%v", err) 27 | } 28 | // Get the current time 29 | currentTime := time.Now() 30 | 31 | // Get the current month as an integer (1-12) 32 | currentMonth := int(currentTime.Month()) 33 | currentYear := int(currentTime.Year()) 34 | 35 | if _, _, _, err := TotalAPICallsInMonth(currentMonth, currentYear, true, false, "PAYG"); err != nil { 36 | t.Fatalf("%v", err) 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /internal/client/sites/sites_test.go: -------------------------------------------------------------------------------- 1 | // Copyright 2024 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package sites 16 | 17 | import ( 18 | "internal/client/clienttest" 19 | "testing" 20 | ) 21 | 22 | func TestListSites(t *testing.T) { 23 | if err := clienttest.TestSetup(clienttest.ENV_REQD, 24 | clienttest.SITEID_NOT_REQD, clienttest.CLIPATH_NOT_REQD); err != nil { 25 | t.Fatalf("%v", err) 26 | } 27 | if _, err := List(); err != nil { 28 | t.Fatalf("%v", err) 29 | } 30 | } 31 | 32 | func TestGetSiteIDs(t *testing.T) { 33 | if err := clienttest.TestSetup(clienttest.ENV_REQD, 34 | clienttest.SITEID_NOT_REQD, clienttest.CLIPATH_NOT_REQD); err != nil { 35 | t.Fatalf("%v", err) 36 | } 37 | if _, err := GetSiteIDs(); err != nil { 38 | t.Fatalf("%v", err) 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /internal/clilog/go.mod: -------------------------------------------------------------------------------- 1 | module clilog 2 | 3 | go 1.23.2 4 | -------------------------------------------------------------------------------- /internal/cmd/apidocs/docs.go: -------------------------------------------------------------------------------- 1 | // Copyright 2023 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package apidocs 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // DocCmd to manage apis 22 | var DocCmd = &cobra.Command{ 23 | Use: "documentation", 24 | Short: "Manage the documentation for the specified catalog item", 25 | Long: "Manage the documentation for the specified catalog item", 26 | } 27 | 28 | func init() { 29 | DocCmd.AddCommand(GetDocCmd) 30 | DocCmd.AddCommand(UpdateDocCmd) 31 | } 32 | -------------------------------------------------------------------------------- /internal/cmd/apihub/instances/list.go: -------------------------------------------------------------------------------- 1 | // Copyright 2024 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package instances 16 | 17 | import ( 18 | "internal/apiclient" 19 | "internal/client/hub" 20 | 21 | "github.com/spf13/cobra" 22 | ) 23 | 24 | // ListCmd to get a catalog items 25 | var ListCmd = &cobra.Command{ 26 | Use: "list", 27 | Short: "List API Hub Instances", 28 | Long: "List API Hub Instances", 29 | Args: func(cmd *cobra.Command, args []string) (err error) { 30 | apiclient.SetRegion(region) 31 | return apiclient.SetApigeeOrg(org) 32 | }, 33 | RunE: func(cmd *cobra.Command, args []string) (err error) { 34 | cmd.SilenceUsage = true 35 | _, err = hub.LookupInstance() 36 | return 37 | }, 38 | } 39 | -------------------------------------------------------------------------------- /internal/cmd/apis/common.go: -------------------------------------------------------------------------------- 1 | // Copyright 2023 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package apis 16 | 17 | import ( 18 | "encoding/json" 19 | "fmt" 20 | "strconv" 21 | ) 22 | 23 | const deploymentMsg = "When set to true, generateDeployChangeReport will be executed and " + 24 | "deployment will proceed if there are no conflicts" 25 | 26 | func GetRevision(respBody []byte) (revision int, err error) { 27 | var apiProxyRevResp map[string]interface{} 28 | 29 | err = json.Unmarshal(respBody, &apiProxyRevResp) 30 | if err != nil { 31 | return -1, err 32 | } 33 | apiProxyRev, err := strconv.Atoi(fmt.Sprintf("%v", apiProxyRevResp["revision"])) 34 | if err != nil { 35 | return -1, err 36 | } 37 | return apiProxyRev, nil 38 | } 39 | -------------------------------------------------------------------------------- /internal/cmd/apis/crtapi.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package apis 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // CreateCmd to create api 22 | var CreateCmd = &cobra.Command{ 23 | Use: "create", 24 | Short: "Creates an API proxy in an Apigee Org", 25 | Long: "Creates an API proxy in an Apigee Org", 26 | } 27 | 28 | var ( 29 | targetURLRef string 30 | importProxy, skipPolicy, addCORS bool 31 | ) 32 | 33 | func init() { 34 | // disable v1 of OasCreate 35 | // CreateCmd.AddCommand(OasCreateCmd) 36 | CreateCmd.AddCommand(OasCreatev2Cmd) 37 | CreateCmd.AddCommand(GhCreateCmd) 38 | CreateCmd.AddCommand(BundleCreateCmd) 39 | CreateCmd.AddCommand(GqlCreateCmd) 40 | CreateCmd.AddCommand(IntegrationCmd) 41 | CreateCmd.AddCommand(SwaggerCreateCmd) 42 | } 43 | -------------------------------------------------------------------------------- /internal/cmd/apis/kvmapi.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package apis 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // KvmCmd to manage tracing of apis 22 | var KvmCmd = &cobra.Command{ 23 | Use: "kvm", 24 | Short: "Manage API proxy scoped KVMs", 25 | Long: "Manage API proxy scoped KVMs", 26 | } 27 | 28 | var proxyName string 29 | 30 | func init() { 31 | KvmCmd.AddCommand(CreateKvmCmd) 32 | KvmCmd.AddCommand(ListKvmCmd) 33 | KvmCmd.AddCommand(DelKvmCmd) 34 | } 35 | -------------------------------------------------------------------------------- /internal/cmd/apis/traceapi.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package apis 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // TraceCmd to manage tracing of apis 22 | var TraceCmd = &cobra.Command{ 23 | Use: "debugsessions", 24 | Short: "Manage debusessions of Apigee API proxies", 25 | Long: "Manage debusessions of Apigee API proxy revisions deployed in an environment", 26 | } 27 | 28 | func init() { 29 | TraceCmd.PersistentFlags().StringVarP(&env, "env", "e", 30 | "", "Apigee environment name") 31 | 32 | _ = TraceCmd.MarkPersistentFlagRequired("env") 33 | 34 | TraceCmd.AddCommand(CreateTrcCmd) 35 | TraceCmd.AddCommand(ListTrcCmd) 36 | TraceCmd.AddCommand(GetTrcCmd) 37 | } 38 | -------------------------------------------------------------------------------- /internal/cmd/appgroups/apps.go: -------------------------------------------------------------------------------- 1 | // Copyright 2023 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package appgroups 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // AppCmd to manage apps 22 | var AppCmd = &cobra.Command{ 23 | Use: "apps", 24 | Short: "Manage apps in an Apigee Application Group", 25 | Long: "Manage apps in an Apigee Application Group", 26 | } 27 | 28 | func init() { 29 | AppCmd.AddCommand(CreateAppCmd) 30 | AppCmd.AddCommand(ListAppCmd) 31 | AppCmd.AddCommand(GetAppCmd) 32 | AppCmd.AddCommand(DelAppCmd) 33 | AppCmd.AddCommand(ManageAppCmd) 34 | AppCmd.AddCommand(UpdateAppCmd) 35 | AppCmd.AddCommand(KeyCmd) 36 | AppCmd.AddCommand(ExpAppCmd) 37 | AppCmd.AddCommand(ImpAppCmd) 38 | } 39 | -------------------------------------------------------------------------------- /internal/cmd/appgroups/keys.go: -------------------------------------------------------------------------------- 1 | // Copyright 2023 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package appgroups 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // KeyCmd to manage keys in an app 22 | var KeyCmd = &cobra.Command{ 23 | Use: "keys", 24 | Short: "Manage keys in an App within an AppGroup", 25 | Long: "Manage keys in an App within an AppGroup", 26 | } 27 | 28 | func init() { 29 | KeyCmd.AddCommand(GetKeyCmd) 30 | KeyCmd.AddCommand(DelKeyCmd) 31 | KeyCmd.AddCommand(CreateKeyCmd) 32 | KeyCmd.AddCommand(ManageKeyCmd) 33 | KeyCmd.AddCommand(DelProdKeyCmd) 34 | KeyCmd.AddCommand(UpdateKeyProdCmd) 35 | } 36 | -------------------------------------------------------------------------------- /internal/cmd/cache/listcache.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package cache 16 | 17 | import ( 18 | "internal/apiclient" 19 | "internal/client/cache" 20 | 21 | "github.com/spf13/cobra" 22 | ) 23 | 24 | // ListCmd to list caches 25 | var ListCmd = &cobra.Command{ 26 | Use: "list", 27 | Short: "List all caches in your environment", 28 | Long: "List all caches in your environment", 29 | Args: func(cmd *cobra.Command, args []string) (err error) { 30 | apiclient.SetApigeeEnv(env) 31 | apiclient.SetRegion(region) 32 | return apiclient.SetApigeeOrg(org) 33 | }, 34 | RunE: func(cmd *cobra.Command, args []string) (err error) { 35 | cmd.SilenceUsage = true 36 | 37 | _, err = cache.List() 38 | return 39 | }, 40 | } 41 | 42 | func init() { 43 | } 44 | -------------------------------------------------------------------------------- /internal/cmd/datacollectors/listdatacollector.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package datacollectors 16 | 17 | import ( 18 | "internal/apiclient" 19 | "internal/client/datacollectors" 20 | 21 | "github.com/spf13/cobra" 22 | ) 23 | 24 | // ListCmd to create a new data collector 25 | var ListCmd = &cobra.Command{ 26 | Use: "list", 27 | Short: "List Data Collectors", 28 | Long: "List Data Collectors", 29 | Args: func(cmd *cobra.Command, args []string) (err error) { 30 | apiclient.SetRegion(region) 31 | return apiclient.SetApigeeOrg(org) 32 | }, 33 | RunE: func(cmd *cobra.Command, args []string) (err error) { 34 | cmd.SilenceUsage = true 35 | 36 | _, err = datacollectors.List() 37 | return 38 | }, 39 | } 40 | -------------------------------------------------------------------------------- /internal/cmd/developers/subscriptions.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package developers 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // SubCmd to manage subscriptions of developers 22 | var SubCmd = &cobra.Command{ 23 | Use: "subscriptions", 24 | Short: "Manage subscriptions for a Developer", 25 | Long: "Manage subscriptions for a Developer", 26 | } 27 | 28 | var subscription string 29 | 30 | func init() { 31 | SubCmd.AddCommand(CreateSubCmd) 32 | SubCmd.AddCommand(ListSubCmd) 33 | SubCmd.AddCommand(GetSubCmd) 34 | SubCmd.AddCommand(ExpSubCmd) 35 | SubCmd.AddCommand(ExportSubCmd) 36 | } 37 | -------------------------------------------------------------------------------- /internal/cmd/env/archives.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package env 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // ArchiveCmd to deploy apis via archives 22 | var ArchiveCmd = &cobra.Command{ 23 | Use: "archives", 24 | Short: "Manage archive deployments for the environment", 25 | Long: "Manage archive deployments for the environment", 26 | } 27 | 28 | var name string 29 | 30 | func init() { 31 | ArchiveCmd.PersistentFlags().StringVarP(&environment, "env", "e", 32 | "", "Apigee environment name") 33 | 34 | _ = ArchiveCmd.MarkPersistentFlagRequired("env") 35 | 36 | ArchiveCmd.AddCommand(ListArchiveCmd) 37 | ArchiveCmd.AddCommand(CreateArchiveCmd) 38 | ArchiveCmd.AddCommand(GetArchiveCmd) 39 | ArchiveCmd.AddCommand(DelArchiveCmd) 40 | } 41 | -------------------------------------------------------------------------------- /internal/cmd/env/debugmask.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package env 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // DebugCmd to manage debug masks 22 | var DebugCmd = &cobra.Command{ 23 | Use: "debugmask", 24 | Short: "Manage debugmasks for the environment", 25 | Long: "Manage debugmasks for the environment", 26 | } 27 | 28 | func init() { 29 | DebugCmd.PersistentFlags().StringVarP(&environment, "env", "e", 30 | "", "Apigee environment name") 31 | 32 | _ = DebugCmd.MarkPersistentFlagRequired("env") 33 | 34 | DebugCmd.AddCommand(GetDebugCmd) 35 | DebugCmd.AddCommand(SetDebugCmd) 36 | } 37 | -------------------------------------------------------------------------------- /internal/cmd/env/deployments.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package env 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // DeployCmd to manage api deployments for an environment 22 | var DeployCmd = &cobra.Command{ 23 | Use: "deployments", 24 | Short: "Manage deployments for the environment", 25 | Long: "Manage deployments for the environment", 26 | } 27 | 28 | func init() { 29 | DeployCmd.PersistentFlags().StringVarP(&environment, "env", "e", 30 | "", "Apigee environment name") 31 | 32 | _ = DeployCmd.MarkPersistentFlagRequired("env") 33 | 34 | DeployCmd.AddCommand(GetDeployCmd) 35 | DeployCmd.AddCommand(GetConfigCmd) 36 | } 37 | -------------------------------------------------------------------------------- /internal/cmd/env/getdebugmask.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package env 16 | 17 | import ( 18 | "internal/apiclient" 19 | 20 | environments "internal/client/env" 21 | 22 | "github.com/spf13/cobra" 23 | ) 24 | 25 | // GetDebugCmd to get debug masks 26 | var GetDebugCmd = &cobra.Command{ 27 | Use: "get", 28 | Short: "Get debugmasks for an Environment", 29 | Long: "Get debugmasks for an Environment", 30 | Args: func(cmd *cobra.Command, args []string) (err error) { 31 | apiclient.SetApigeeEnv(environment) 32 | apiclient.SetRegion(region) 33 | return apiclient.SetApigeeOrg(org) 34 | }, 35 | RunE: func(cmd *cobra.Command, args []string) (err error) { 36 | cmd.SilenceUsage = true 37 | 38 | _, err = environments.GetDebug() 39 | return 40 | }, 41 | } 42 | -------------------------------------------------------------------------------- /internal/cmd/env/getiam.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package env 16 | 17 | import ( 18 | "internal/apiclient" 19 | 20 | environments "internal/client/env" 21 | 22 | "github.com/spf13/cobra" 23 | ) 24 | 25 | // GetIamCmd to get env iam details 26 | var GetIamCmd = &cobra.Command{ 27 | Use: "get", 28 | Short: "Gets the IAM policy on an Environment", 29 | Long: "Gets the IAM policy on an Environment", 30 | Args: func(cmd *cobra.Command, args []string) (err error) { 31 | apiclient.SetApigeeEnv(environment) 32 | apiclient.SetRegion(region) 33 | return apiclient.SetApigeeOrg(org) 34 | }, 35 | RunE: func(cmd *cobra.Command, args []string) (err error) { 36 | cmd.SilenceUsage = true 37 | 38 | _, err = environments.GetIAM() 39 | return 40 | }, 41 | } 42 | -------------------------------------------------------------------------------- /internal/cmd/env/listarchives.go: -------------------------------------------------------------------------------- 1 | // Copyright 2021 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package env 16 | 17 | import ( 18 | "internal/apiclient" 19 | "internal/client/env" 20 | 21 | "github.com/spf13/cobra" 22 | ) 23 | 24 | // ListArchiveCmd to list archives in env 25 | var ListArchiveCmd = &cobra.Command{ 26 | Use: "list", 27 | Short: "List archives deployed to the environment", 28 | Long: "List archives deployed to the environment", 29 | Args: func(cmd *cobra.Command, args []string) (err error) { 30 | apiclient.SetApigeeEnv(environment) 31 | apiclient.SetRegion(region) 32 | return apiclient.SetApigeeOrg(org) 33 | }, 34 | RunE: func(cmd *cobra.Command, args []string) (err error) { 35 | cmd.SilenceUsage = true 36 | 37 | _, err = env.ListArchives() 38 | return 39 | }, 40 | } 41 | 42 | func init() { 43 | } 44 | -------------------------------------------------------------------------------- /internal/cmd/env/listenv.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package env 16 | 17 | import ( 18 | "internal/apiclient" 19 | "internal/client/env" 20 | 21 | "github.com/spf13/cobra" 22 | ) 23 | 24 | // ListCmd to list envs 25 | var ListCmd = &cobra.Command{ 26 | Use: "list", 27 | Short: "List environments in an Apigee Org", 28 | Long: "List environments in an Apigee Org", 29 | Args: func(cmd *cobra.Command, args []string) (err error) { 30 | apiclient.SetRegion(region) 31 | return apiclient.SetApigeeOrg(org) 32 | }, 33 | RunE: func(cmd *cobra.Command, args []string) (err error) { 34 | cmd.SilenceUsage = true 35 | 36 | _, err = env.List() 37 | return 38 | }, 39 | } 40 | 41 | func init() { 42 | } 43 | -------------------------------------------------------------------------------- /internal/cmd/env/secactioncfg.go: -------------------------------------------------------------------------------- 1 | // Copyright 2023 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package env 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // SecActCfgCmd to manage security incidents 22 | var SecActCfgCmd = &cobra.Command{ 23 | Use: "secactionscfg", 24 | Short: "Manage SecurityActionsConfig for Apigee Advanced Security", 25 | Long: "Manage SecurityActionsConfig for Apigee Advanced Security", 26 | } 27 | 28 | func init() { 29 | SecActCfgCmd.PersistentFlags().StringVarP(&environment, "env", "e", 30 | "", "Apigee environment name") 31 | 32 | SecActCfgCmd.AddCommand(GetSecActCfgCmd) 33 | SecActCfgCmd.AddCommand(EnableSecActCfgCmd) 34 | SecActCfgCmd.AddCommand(DisableSecActCfgCmd) 35 | 36 | _ = SecActCfgCmd.MarkPersistentFlagRequired("env") 37 | } 38 | -------------------------------------------------------------------------------- /internal/cmd/env/secactions.go: -------------------------------------------------------------------------------- 1 | // Copyright 2023 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package env 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // SecActCmd to manage security incidents 22 | var SecActCmd = &cobra.Command{ 23 | Use: "secactions", 24 | Short: "Manage SecurityActions for Apigee Advanced Security", 25 | Long: "Manage SecurityActions for Apigee Advanced Security", 26 | } 27 | 28 | func init() { 29 | SecActCmd.PersistentFlags().StringVarP(&environment, "env", "e", 30 | "", "Apigee environment name") 31 | 32 | _ = SecActCmd.MarkPersistentFlagRequired("env") 33 | 34 | SecActCmd.AddCommand(ListSecActCmd) 35 | SecActCmd.AddCommand(GetSecActCmd) 36 | SecActCmd.AddCommand(EnableSecActCmd) 37 | SecActCmd.AddCommand(DisableSecActCmd) 38 | SecActCmd.AddCommand(CreateSecActCmd) 39 | } 40 | -------------------------------------------------------------------------------- /internal/cmd/env/secincidents.go: -------------------------------------------------------------------------------- 1 | // Copyright 2023 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package env 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // SecInCmd to manage security incidents 22 | var SecInCmd = &cobra.Command{ 23 | Use: "secincidents", 24 | Short: "View SecurityIncidents from Apigee Advanced Security", 25 | Long: "View SecurityIncidents from Apigee Advanced Security", 26 | } 27 | 28 | func init() { 29 | SecInCmd.PersistentFlags().StringVarP(&environment, "env", "e", 30 | "", "Apigee environment name") 31 | 32 | _ = SecInCmd.MarkPersistentFlagRequired("env") 33 | 34 | SecInCmd.AddCommand(ListSecInCmd) 35 | SecInCmd.AddCommand(GetSecInCmd) 36 | } 37 | -------------------------------------------------------------------------------- /internal/cmd/env/secreports.go: -------------------------------------------------------------------------------- 1 | // Copyright 2023 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package env 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // SecReportCmd to manage security reports 22 | var SecReportCmd = &cobra.Command{ 23 | Use: "secreports", 24 | Short: "Manage SecurityReports for Apigee Advanced Security", 25 | Long: "View SecurityReports for Apigee Advanced Security", 26 | } 27 | 28 | func init() { 29 | SecReportCmd.PersistentFlags().StringVarP(&environment, "env", "e", 30 | "", "Apigee environment name") 31 | 32 | _ = SecReportCmd.MarkPersistentFlagRequired("env") 33 | 34 | SecReportCmd.AddCommand(ListSecReportCmd) 35 | SecReportCmd.AddCommand(GetSecReportCmd) 36 | } 37 | -------------------------------------------------------------------------------- /internal/cmd/env/traceoverrides.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package env 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // TraceOverridesCmd to manage tracing of apis 22 | var TraceOverridesCmd = &cobra.Command{ 23 | Use: "overrides", 24 | Short: "Manage Distributed Trace config overrides for the environment", 25 | Long: "Manage Distributed Trace config overrides for the environment", 26 | } 27 | 28 | func init() { 29 | TraceOverridesCmd.AddCommand(GetTraceOverridesCmd) 30 | TraceOverridesCmd.AddCommand(ListTraceOverridesCmd) 31 | TraceOverridesCmd.AddCommand(CrtTraceOverridesCmd) 32 | } 33 | -------------------------------------------------------------------------------- /internal/cmd/eptattachment/listeptattachment.go: -------------------------------------------------------------------------------- 1 | // Copyright 2021 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package eptattachment 16 | 17 | import ( 18 | "internal/apiclient" 19 | "internal/client/eptattachment" 20 | 21 | "github.com/spf13/cobra" 22 | ) 23 | 24 | // ListCmd to list endpoint attachments 25 | var ListCmd = &cobra.Command{ 26 | Use: "list", 27 | Short: "List of service endpoints", 28 | Long: "Lists of service endpoints", 29 | Args: func(cmd *cobra.Command, args []string) (err error) { 30 | apiclient.SetRegion(region) 31 | return apiclient.SetApigeeOrg(org) 32 | }, 33 | RunE: func(cmd *cobra.Command, args []string) (err error) { 34 | cmd.SilenceUsage = true 35 | 36 | _, err = eptattachment.List() 37 | return 38 | }, 39 | } 40 | -------------------------------------------------------------------------------- /internal/cmd/flowhooks/listfh.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package flowhooks 16 | 17 | import ( 18 | "internal/apiclient" 19 | "internal/client/flowhooks" 20 | 21 | "github.com/spf13/cobra" 22 | ) 23 | 24 | // ListCmd to list flow hooks 25 | var ListCmd = &cobra.Command{ 26 | Use: "list", 27 | Short: "List Flowhooks", 28 | Long: "List Flowhooks", 29 | Args: func(cmd *cobra.Command, args []string) (err error) { 30 | apiclient.SetApigeeEnv(env) 31 | apiclient.SetRegion(region) 32 | return apiclient.SetApigeeOrg(org) 33 | }, 34 | RunE: func(cmd *cobra.Command, args []string) (err error) { 35 | cmd.SilenceUsage = true 36 | 37 | _, err = flowhooks.List() 38 | return 39 | }, 40 | } 41 | -------------------------------------------------------------------------------- /internal/cmd/go.mod: -------------------------------------------------------------------------------- 1 | module cmd 2 | 3 | go 1.23.2 4 | -------------------------------------------------------------------------------- /internal/cmd/iam/iam.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package iam 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // Cmd to manage orgs 22 | var Cmd = &cobra.Command{ 23 | Use: "iam", 24 | Short: "Manage IAM permissions for Apigee", 25 | Long: "Manage IAM permissions for Apigee. The SA to run this command requires Security Admin, " + 26 | "Create Service Accounts and Service Account Key Admin roles", 27 | } 28 | 29 | var ( 30 | name, projectID, roleType string 31 | generateName bool 32 | ) 33 | 34 | var roles = []string{ 35 | "mart", "analytics", "all", "logger", "connect", "cassandra", "watcher", 36 | "sync", "admin", "api-admin", "env-admin", "dev-admin", "readonly-admin", 37 | } 38 | 39 | func init() { 40 | Cmd.AddCommand(CallCmd) 41 | } 42 | -------------------------------------------------------------------------------- /internal/cmd/iam/iamUtilities.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package iam 16 | 17 | import ( 18 | "math/rand" 19 | "time" 20 | ) 21 | 22 | // GenerateName 23 | func GenerateName(prefix string) string { 24 | const letterBytes = "abcdefghijklmnopqrstuvwxyz0123456789" 25 | r := rand.New(rand.NewSource(time.Now().UTC().UnixNano())) 26 | b := make([]byte, 7) // 7 random chars 27 | for i := range b { 28 | b[i] = letterBytes[r.Intn(len(letterBytes))] 29 | } 30 | return prefix + string(b) 31 | } 32 | 33 | // ValidateRoleType 34 | func ValidateRoleType(role string) bool { 35 | for _, r := range roles { 36 | if role == r { 37 | return true 38 | } 39 | } 40 | return false 41 | } 42 | -------------------------------------------------------------------------------- /internal/cmd/instances/attachments.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package instances 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // AttachCmd to manage instances 22 | var AttachCmd = &cobra.Command{ 23 | Use: "attachments", 24 | Short: "Manage environments to instances", 25 | Long: "Manage environments to instances", 26 | } 27 | 28 | var environment string 29 | 30 | func init() { 31 | AttachCmd.PersistentFlags().StringVarP(&org, "org", "o", 32 | "", "Apigee organization name") 33 | 34 | AttachCmd.AddCommand(CreateAttachCmd) 35 | AttachCmd.AddCommand(ListAttachCmd) 36 | AttachCmd.AddCommand(GetAttachCmd) 37 | AttachCmd.AddCommand(DeleteAttachCmd) 38 | } 39 | -------------------------------------------------------------------------------- /internal/cmd/instances/listnat.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package instances 16 | 17 | import ( 18 | "internal/apiclient" 19 | "internal/client/instances" 20 | 21 | "github.com/spf13/cobra" 22 | ) 23 | 24 | // ListNatCmd activates NAT for an Apigee instance 25 | var ListNatCmd = &cobra.Command{ 26 | Use: "list", 27 | Short: "List NAT IPs for an Apigee instance", 28 | Long: "List NAT IPs for an Apigee instance", 29 | Args: func(cmd *cobra.Command, args []string) (err error) { 30 | apiclient.SetApigeeEnv(environment) 31 | apiclient.SetRegion(region) 32 | return apiclient.SetApigeeOrg(org) 33 | }, 34 | RunE: func(cmd *cobra.Command, args []string) (err error) { 35 | cmd.SilenceUsage = true 36 | 37 | _, err = instances.ListNatIPs(name) 38 | return 39 | }, 40 | } 41 | -------------------------------------------------------------------------------- /internal/cmd/instances/nat.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package instances 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // NatCmd to manage instances 22 | var NatCmd = &cobra.Command{ 23 | Use: "nat", 24 | Short: "Manage NAT IPs for Apigee instances", 25 | Long: "Manage NAT IPs for Apigee instances", 26 | } 27 | 28 | var natid string 29 | 30 | func init() { 31 | NatCmd.PersistentFlags().StringVarP(&org, "org", "o", 32 | "", "Apigee organization name") 33 | 34 | NatCmd.PersistentFlags().StringVarP(&name, "name", "n", 35 | "", "Apigee instance name") 36 | 37 | NatCmd.AddCommand(ReserveNatCmd) 38 | NatCmd.AddCommand(ActivateNatCmd) 39 | NatCmd.AddCommand(ListNatCmd) 40 | NatCmd.AddCommand(DeleteNatCmd) 41 | 42 | _ = NatCmd.MarkPersistentFlagRequired("name") 43 | } 44 | -------------------------------------------------------------------------------- /internal/cmd/keystores/listks.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package keystores 16 | 17 | import ( 18 | "internal/apiclient" 19 | "internal/client/keystores" 20 | 21 | "github.com/spf13/cobra" 22 | ) 23 | 24 | // ListCmd to list key stores 25 | var ListCmd = &cobra.Command{ 26 | Use: "list", 27 | Short: "List Key Stores", 28 | Long: "List Key Stores", 29 | Args: func(cmd *cobra.Command, args []string) (err error) { 30 | apiclient.SetApigeeEnv(env) 31 | apiclient.SetRegion(region) 32 | return apiclient.SetApigeeOrg(org) 33 | }, 34 | RunE: func(cmd *cobra.Command, args []string) (err error) { 35 | cmd.SilenceUsage = true 36 | 37 | _, err = keystores.List() 38 | return 39 | }, 40 | } 41 | -------------------------------------------------------------------------------- /internal/cmd/kvm/entries.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package kvm 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // EntryCmd to manage kvm entries 22 | var EntryCmd = &cobra.Command{ 23 | Use: "entries", 24 | Short: "Manage Key Value Map Entries", 25 | Long: "Manage Key Value Map Entries", 26 | } 27 | 28 | var mapName, keyName string 29 | 30 | func init() { 31 | EntryCmd.AddCommand(CreateEntryCmd) 32 | EntryCmd.AddCommand(GetEntryCmd) 33 | EntryCmd.AddCommand(DelEntryCmd) 34 | EntryCmd.AddCommand(ListEntryCmd) 35 | EntryCmd.AddCommand(ExpEntryCmd) 36 | EntryCmd.AddCommand(ImpEntryCmd) 37 | EntryCmd.AddCommand(UpdateEntryCmd) 38 | } 39 | -------------------------------------------------------------------------------- /internal/cmd/observe/observe.go: -------------------------------------------------------------------------------- 1 | // Copyright 2024 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package observe 16 | 17 | import ( 18 | "internal/cmd/observe/jobs" 19 | "internal/cmd/observe/sources" 20 | 21 | "github.com/spf13/cobra" 22 | ) 23 | 24 | // Cmd to api observability 25 | var Cmd = &cobra.Command{ 26 | Use: "observations", 27 | Short: "Enables users to discover shadow APIs in GCP", 28 | Long: "Enables users to discover shadow APIs in existing Google Cloud infrastructure", 29 | } 30 | 31 | func init() { 32 | Cmd.AddCommand(jobs.ObservationJobCmd) 33 | Cmd.AddCommand(sources.ObservationSourceCmd) 34 | } 35 | -------------------------------------------------------------------------------- /internal/cmd/ops/ops.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package ops 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // Cmd to manage ops 22 | var Cmd = &cobra.Command{ 23 | Use: "operations", 24 | Aliases: []string{"ops"}, 25 | Short: "View Apigee Operations", 26 | Long: "View Apigee Operations", 27 | } 28 | 29 | var org, region string 30 | 31 | func init() { 32 | Cmd.PersistentFlags().StringVarP(&org, "org", "o", 33 | "", "Apigee organization name") 34 | Cmd.PersistentFlags().StringVarP(®ion, "region", "r", 35 | "", "Apigee control plane region name; default is https://apigee.googleapis.com") 36 | 37 | Cmd.AddCommand(ListCmd) 38 | Cmd.AddCommand(GetCmd) 39 | } 40 | -------------------------------------------------------------------------------- /internal/cmd/org/deployments.go: -------------------------------------------------------------------------------- 1 | // Copyright 2023 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package org 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // DeployCmd to get api deployments in an org 22 | var DeployCmd = &cobra.Command{ 23 | Use: "deployments", 24 | Short: "Manage deployments in an Apigee org", 25 | Long: "Manage deployments in an Apigee org", 26 | } 27 | 28 | func init() { 29 | DeployCmd.PersistentFlags().StringVarP(&org, "org", "o", 30 | "", "Apigee organization name") 31 | 32 | DeployCmd.AddCommand(GetDeployCmd) 33 | } 34 | -------------------------------------------------------------------------------- /internal/cmd/org/getorg.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package org 16 | 17 | import ( 18 | "internal/apiclient" 19 | "internal/client/orgs" 20 | 21 | "github.com/spf13/cobra" 22 | ) 23 | 24 | // GetCmd to get org details 25 | var GetCmd = &cobra.Command{ 26 | Use: "get", 27 | Short: "Show details of an Apigee Org", 28 | Long: "Show details of an Apigee Org", 29 | Args: func(cmd *cobra.Command, args []string) (err error) { 30 | apiclient.SetRegion(region) 31 | return apiclient.SetApigeeOrg(org) 32 | }, 33 | RunE: func(cmd *cobra.Command, args []string) (err error) { 34 | cmd.SilenceUsage = true 35 | 36 | _, err = orgs.Get() 37 | return 38 | }, 39 | } 40 | 41 | func init() { 42 | GetCmd.Flags().StringVarP(&org, "org", "o", 43 | "", "Apigee organization name") 44 | } 45 | -------------------------------------------------------------------------------- /internal/cmd/org/listorgs.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package org 16 | 17 | import ( 18 | "internal/apiclient" 19 | "internal/client/orgs" 20 | 21 | "github.com/spf13/cobra" 22 | ) 23 | 24 | // ListCmd to list orgs 25 | var ListCmd = &cobra.Command{ 26 | Use: "list", 27 | Short: "List the Apigee organizations", 28 | Long: "List the Apigee organizations, and the related projects that a user has permissions for", 29 | Args: func(cmd *cobra.Command, args []string) (err error) { 30 | apiclient.SetRegion(region) 31 | return nil 32 | }, 33 | RunE: func(cmd *cobra.Command, args []string) (err error) { 34 | cmd.SilenceUsage = true 35 | 36 | _, err = orgs.List() 37 | return 38 | }, 39 | } 40 | 41 | func init() { 42 | } 43 | -------------------------------------------------------------------------------- /internal/cmd/org/reports.go: -------------------------------------------------------------------------------- 1 | // Copyright 2022 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package org 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // ReportCmd to manage org reprots 22 | var ReportCmd = &cobra.Command{ 23 | Use: "reports", 24 | Aliases: []string{"orgs"}, 25 | Short: "Report Apigee Org Usage", 26 | Long: "Report Apigee Org Usage", 27 | } 28 | 29 | const ( 30 | apiCallsHeader = "\tAPI CALLS" 31 | proxyTypeHeader = "\tEXTENSIBLE PROXY\tSTANDARD PROXY" 32 | ) 33 | 34 | func init() { 35 | ReportCmd.AddCommand(MonthlyCmd) 36 | ReportCmd.AddCommand(YearlyCmd) 37 | } 38 | -------------------------------------------------------------------------------- /internal/cmd/preferences/cleanpref.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package preferences 16 | 17 | import ( 18 | "internal/apiclient" 19 | 20 | "github.com/spf13/cobra" 21 | ) 22 | 23 | // CleanCmd to get org details 24 | var CleanCmd = &cobra.Command{ 25 | Use: "remove", 26 | Short: "Remove preferences file from the home dir", 27 | Long: "Remove preferences file from the home dir", 28 | RunE: func(cmd *cobra.Command, args []string) (err error) { 29 | cmd.SilenceUsage = true 30 | 31 | return apiclient.DeletePreferencesFile() 32 | }, 33 | } 34 | -------------------------------------------------------------------------------- /internal/cmd/preferences/getpref.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package preferences 16 | 17 | import ( 18 | "internal/apiclient" 19 | 20 | "github.com/spf13/cobra" 21 | ) 22 | 23 | // GetCmd to get org details 24 | var GetCmd = &cobra.Command{ 25 | Use: "get", 26 | Short: "Get preferences for apigeecli", 27 | Long: "Get preferences for apigeecli", 28 | RunE: func(cmd *cobra.Command, args []string) (err error) { 29 | cmd.SilenceUsage = true 30 | 31 | err = apiclient.GetPreferences() 32 | return err 33 | }, 34 | } 35 | -------------------------------------------------------------------------------- /internal/cmd/preferences/preferences.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package preferences 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // Cmd to manage preferences 22 | var Cmd = &cobra.Command{ 23 | Use: "preferences", 24 | Aliases: []string{"prefs"}, 25 | Short: "Manage apigeecli preferences", 26 | Long: "Manage apigeecli preferences", 27 | } 28 | 29 | func init() { 30 | Cmd.AddCommand(CleanCmd) 31 | Cmd.AddCommand(SetCmd) 32 | Cmd.AddCommand(GetCmd) 33 | } 34 | -------------------------------------------------------------------------------- /internal/cmd/products/attributes.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package products 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // AttributesCmd to manage tracing of apis 22 | var AttributesCmd = &cobra.Command{ 23 | Use: "attributes", 24 | Aliases: []string{"attrs"}, 25 | Short: "Manage API Product Attributes", 26 | Long: "Manage API Product Attributes", 27 | } 28 | 29 | var attrName string 30 | 31 | func init() { 32 | AttributesCmd.PersistentFlags().StringVarP(&name, "name", "n", 33 | "", "API Product name") 34 | 35 | _ = AttributesCmd.MarkPersistentFlagRequired("name") 36 | 37 | AttributesCmd.AddCommand(DelAttrCmd) 38 | AttributesCmd.AddCommand(ListAttrCmd) 39 | AttributesCmd.AddCommand(GetAttrCmd) 40 | AttributesCmd.AddCommand(UpdAttrCmd) 41 | } 42 | -------------------------------------------------------------------------------- /internal/cmd/products/listattrprod.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package products 16 | 17 | import ( 18 | "internal/apiclient" 19 | "internal/client/products" 20 | 21 | "github.com/spf13/cobra" 22 | ) 23 | 24 | // ListAttrCmd to delete product attribute 25 | var ListAttrCmd = &cobra.Command{ 26 | Use: "list", 27 | Short: "List attributes of an API product", 28 | Long: "List attributes of an API product", 29 | Args: func(cmd *cobra.Command, args []string) (err error) { 30 | apiclient.SetRegion(region) 31 | return apiclient.SetApigeeOrg(org) 32 | }, 33 | RunE: func(cmd *cobra.Command, args []string) (err error) { 34 | cmd.SilenceUsage = true 35 | 36 | _, err = products.ListAttributes(name) 37 | return 38 | }, 39 | } 40 | 41 | func init() { 42 | } 43 | -------------------------------------------------------------------------------- /internal/cmd/products/rateplans.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package products 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // RatePlanCmd to manage rateplans of api products 22 | var RatePlanCmd = &cobra.Command{ 23 | Use: "rateplans", 24 | Short: "Manage rateplans for an API Product", 25 | Long: "Manage rateplans for an API Product", 26 | } 27 | 28 | var rateplan string 29 | 30 | func init() { 31 | RatePlanCmd.AddCommand(CreateRateplanCmd) 32 | RatePlanCmd.AddCommand(ListRatePlanCmd) 33 | RatePlanCmd.AddCommand(GetRatePlanCmd) 34 | RatePlanCmd.AddCommand(DelRatePlanCmd) 35 | RatePlanCmd.AddCommand(ExpRateplanCmd) 36 | } 37 | -------------------------------------------------------------------------------- /internal/cmd/projects/projects.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package projects 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // Cmd to manage orgs 22 | var Cmd = &cobra.Command{ 23 | Use: "projects", 24 | Short: "Manage GCP Projects that have Apigee enabled", 25 | Long: "Manage GCP Projects that have Apigee enabled", 26 | } 27 | 28 | var projectID string 29 | 30 | func init() { 31 | Cmd.AddCommand(TestCmd) 32 | } 33 | -------------------------------------------------------------------------------- /internal/cmd/references/listref.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package references 16 | 17 | import ( 18 | "internal/apiclient" 19 | "internal/client/references" 20 | 21 | "github.com/spf13/cobra" 22 | ) 23 | 24 | // ListCmd to get reference 25 | var ListCmd = &cobra.Command{ 26 | Use: "list", 27 | Short: "List all references in an environment", 28 | Long: "List all references in an environment", 29 | Args: func(cmd *cobra.Command, args []string) (err error) { 30 | apiclient.SetApigeeEnv(env) 31 | apiclient.SetRegion(region) 32 | return apiclient.SetApigeeOrg(org) 33 | }, 34 | RunE: func(cmd *cobra.Command, args []string) (err error) { 35 | cmd.SilenceUsage = true 36 | 37 | _, err = references.List() 38 | return 39 | }, 40 | } 41 | -------------------------------------------------------------------------------- /internal/cmd/reports/reports.go: -------------------------------------------------------------------------------- 1 | // Copyright 2024 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package reports 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // Cmd to manage identities 22 | var Cmd = &cobra.Command{ 23 | Use: "reports", 24 | Short: "Manage Analytics custom reports", 25 | Long: "Manage analytics custom reports", 26 | } 27 | 28 | var org, name, region string 29 | 30 | func init() { 31 | Cmd.PersistentFlags().StringVarP(&org, "org", "o", 32 | "", "Apigee organization name") 33 | Cmd.PersistentFlags().StringVarP(®ion, "region", "r", 34 | "", "Apigee control plane region name; default is https://apigee.googleapis.com") 35 | 36 | Cmd.AddCommand(GetCmd) 37 | Cmd.AddCommand(DelCmd) 38 | Cmd.AddCommand(ListCmd) 39 | } 40 | -------------------------------------------------------------------------------- /internal/cmd/sharedflows/crtsf.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package sharedflows 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // CreateCmd to create sharedflow 22 | var CreateCmd = &cobra.Command{ 23 | Use: "create", 24 | Short: "Creates a Sharedflow in an Apigee Org", 25 | Long: "Creates a Sharedflow in an Apigee Org", 26 | } 27 | 28 | func init() { 29 | CreateCmd.AddCommand(GhCreateCmd) 30 | CreateCmd.AddCommand(BundleCreateCmd) 31 | } 32 | -------------------------------------------------------------------------------- /internal/cmd/sites/list.go: -------------------------------------------------------------------------------- 1 | // Copyright 2023 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package sites 16 | 17 | import ( 18 | "internal/apiclient" 19 | "internal/client/sites" 20 | 21 | "github.com/spf13/cobra" 22 | ) 23 | 24 | // ListCmd to list catalog items 25 | var ListCmd = &cobra.Command{ 26 | Use: "list", 27 | Short: "Returns the API Portals associated with the org", 28 | Long: "Returns the API Portals associated with the org", 29 | Args: func(cmd *cobra.Command, args []string) (err error) { 30 | apiclient.SetRegion(region) 31 | return apiclient.SetApigeeOrg(org) 32 | }, 33 | RunE: func(cmd *cobra.Command, args []string) (err error) { 34 | cmd.SilenceUsage = true 35 | 36 | _, err = sites.List() 37 | return 38 | }, 39 | } 40 | -------------------------------------------------------------------------------- /internal/cmd/sites/sites.go: -------------------------------------------------------------------------------- 1 | // Copyright 2023 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package sites 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // Cmd to manage 22 | var Cmd = &cobra.Command{ 23 | Use: "sites", 24 | Short: "Manage Apigee API Portals", 25 | Long: "Manage Apigee API Portals", 26 | } 27 | 28 | var org, region string 29 | 30 | func init() { 31 | Cmd.PersistentFlags().StringVarP(&org, "org", "o", 32 | "", "Apigee organization name") 33 | 34 | Cmd.PersistentFlags().StringVarP(®ion, "region", "r", 35 | "", "Apigee control plane region name; default is https://apigee.googleapis.com") 36 | 37 | Cmd.AddCommand(ListCmd) 38 | 39 | _ = Cmd.MarkFlagRequired("org") 40 | } 41 | -------------------------------------------------------------------------------- /internal/cmd/spaces/iam.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package spaces 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // IamCmd to manage manage env iam permissions 22 | var IamCmd = &cobra.Command{ 23 | Use: "iam", 24 | Short: "Manage IAM permissions for a Space", 25 | Long: "Manage IAM permissions for a Space", 26 | } 27 | 28 | var memberName, role, memberType, space string 29 | 30 | func init() { 31 | IamCmd.PersistentFlags().StringVarP(&space, "space", "", 32 | "", "Apigee space name") 33 | 34 | _ = IamCmd.MarkPersistentFlagRequired("space") 35 | 36 | IamCmd.AddCommand(GetIamCmd) 37 | IamCmd.AddCommand(RemoveRoleCmd) 38 | IamCmd.AddCommand(SetEditorCmd) 39 | IamCmd.AddCommand(SetViewerCmd) 40 | IamCmd.AddCommand(TestIamCmd) 41 | } 42 | -------------------------------------------------------------------------------- /internal/cmd/spaces/listspaces.go: -------------------------------------------------------------------------------- 1 | // Copyright 2025 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package spaces 16 | 17 | import ( 18 | "internal/apiclient" 19 | "internal/client/spaces" 20 | 21 | "github.com/spf13/cobra" 22 | ) 23 | 24 | // ListCmd to list Spaces 25 | var ListCmd = &cobra.Command{ 26 | Use: "list", 27 | Short: "List Apigee Spaces", 28 | Long: "List Apigee Spaces", 29 | Args: func(cmd *cobra.Command, args []string) (err error) { 30 | apiclient.SetRegion(region) 31 | return apiclient.SetApigeeOrg(org) 32 | }, 33 | RunE: func(cmd *cobra.Command, args []string) (err error) { 34 | cmd.SilenceUsage = true 35 | 36 | _, err = spaces.List() 37 | return 38 | }, 39 | } 40 | 41 | func init() { 42 | } 43 | -------------------------------------------------------------------------------- /internal/cmd/sync/getsync.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package sync 16 | 17 | import ( 18 | "internal/apiclient" 19 | "internal/client/sync" 20 | 21 | "github.com/spf13/cobra" 22 | ) 23 | 24 | // GetCmd to get list of identities 25 | var GetCmd = &cobra.Command{ 26 | Use: "get", 27 | Short: "Show the list of identities with access to control plane resources", 28 | Long: "Show the list of identities with access to control plane resources", 29 | Args: func(cmd *cobra.Command, args []string) (err error) { 30 | apiclient.SetRegion(region) 31 | return apiclient.SetApigeeOrg(org) 32 | }, 33 | RunE: func(cmd *cobra.Command, args []string) (err error) { 34 | cmd.SilenceUsage = true 35 | 36 | _, err = sync.Get() 37 | return 38 | }, 39 | } 40 | 41 | func init() { 42 | } 43 | -------------------------------------------------------------------------------- /internal/cmd/sync/resetsync.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package sync 16 | 17 | import ( 18 | "internal/apiclient" 19 | "internal/client/sync" 20 | 21 | "github.com/spf13/cobra" 22 | ) 23 | 24 | // ResetCmd to set identities 25 | var ResetCmd = &cobra.Command{ 26 | Use: "reset", 27 | Short: "Reset identities with access to control plane resources", 28 | Long: "Reset identities with access to control plane resources", 29 | Args: func(cmd *cobra.Command, args []string) (err error) { 30 | apiclient.SetRegion(region) 31 | return apiclient.SetApigeeOrg(org) 32 | }, 33 | RunE: func(cmd *cobra.Command, args []string) (err error) { 34 | cmd.SilenceUsage = true 35 | 36 | _, err = sync.Reset() 37 | return 38 | }, 39 | } 40 | -------------------------------------------------------------------------------- /internal/cmd/targetservers/listts.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package targetservers 16 | 17 | import ( 18 | "internal/apiclient" 19 | "internal/client/targetservers" 20 | 21 | "github.com/spf13/cobra" 22 | ) 23 | 24 | // ListCmd to list target servers 25 | var ListCmd = &cobra.Command{ 26 | Use: "list", 27 | Short: "List Target Servers", 28 | Long: "List Target Servers", 29 | Args: func(cmd *cobra.Command, args []string) (err error) { 30 | apiclient.SetApigeeEnv(env) 31 | apiclient.SetRegion(region) 32 | return apiclient.SetApigeeOrg(org) 33 | }, 34 | RunE: func(cmd *cobra.Command, args []string) (err error) { 35 | cmd.SilenceUsage = true 36 | 37 | _, err = targetservers.List() 38 | return 39 | }, 40 | } 41 | 42 | func init() { 43 | } 44 | -------------------------------------------------------------------------------- /internal/cmd/token/token.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 Google LLC 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package token 16 | 17 | import ( 18 | "github.com/spf13/cobra" 19 | ) 20 | 21 | // Cmd to manage token to interact with apigee.googleapis.com 22 | var Cmd = &cobra.Command{ 23 | Use: "token", 24 | Short: "Manage OAuth 2.0 access tokens", 25 | Long: "Manage OAuth 2.0 access tokens", 26 | } 27 | 28 | var serviceAccount string 29 | 30 | func init() { 31 | Cmd.AddCommand(GetCmd) 32 | Cmd.AddCommand(CacheCmd) 33 | } 34 | -------------------------------------------------------------------------------- /samples/apicategories.json: -------------------------------------------------------------------------------- 1 | { 2 | "data": [ 3 | { 4 | "name": "foo" 5 | }, 6 | { 7 | "name": "bar" 8 | } 9 | ] 10 | } 11 | -------------------------------------------------------------------------------- /samples/apidocs/site__siteId.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "id": "123", 4 | "title": "MockProduct", 5 | "description": "MockProduct", 6 | "published": true, 7 | "anonAllowed": true, 8 | "apiProductName": "MockProduct", 9 | "visibility": true, 10 | "edgeAPIProductName": "MockProduct" 11 | } 12 | ] 13 | -------------------------------------------------------------------------------- /samples/apiproduct-gqlgroup.json: -------------------------------------------------------------------------------- 1 | { 2 | "operationConfigs": [ 3 | { 4 | "apiSource": "orders-gql", 5 | "operations": [ 6 | { 7 | "operationTypes": [ 8 | "query" 9 | ], 10 | "operation": "getOrder" 11 | } 12 | ], 13 | "quota": { 14 | "limit": "1", 15 | "interval": "1", 16 | "timeUnit": "second" 17 | } 18 | } 19 | ], 20 | "operationConfigType": "proxy" 21 | } 22 | -------------------------------------------------------------------------------- /samples/apiproduct-legacy.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "MockProduct", 4 | "displayName": "MockProduct", 5 | "description": "MockProduct", 6 | "apiResources": [ 7 | "/**", 8 | "/" 9 | ], 10 | "approvalType": "auto", 11 | "attributes": [ 12 | { 13 | "name": "description", 14 | "value": "Mock Product" 15 | }, 16 | { 17 | "name": "developer.quota.limit", 18 | "value": "10000" 19 | }, 20 | { 21 | "name": "developer.quota.interval", 22 | "value": "1" 23 | }, 24 | { 25 | "name": "developer.quota.timeunit", 26 | "value": "month" 27 | } 28 | ], 29 | "environments": [ 30 | "dev" 31 | ], 32 | "proxies": [ 33 | "mock" 34 | ], 35 | "quota": "10000", 36 | "quotaInterval": "1", 37 | "quotaTimeUnit": "month", 38 | "scopes": [] 39 | } 40 | ] 41 | -------------------------------------------------------------------------------- /samples/apiproduct-op-group.json: -------------------------------------------------------------------------------- 1 | { 2 | "operationConfigs": [ 3 | { 4 | "apiSource": "orders", 5 | "operations": [ 6 | { 7 | "resource": "/", 8 | "methods": [ 9 | "GET", 10 | "POST" 11 | ] 12 | } 13 | ], 14 | "quota": { 15 | "limit": "1", 16 | "interval": "1", 17 | "timeUnit": "second" 18 | } 19 | } 20 | ], 21 | "operationConfigType": "proxy" 22 | } 23 | -------------------------------------------------------------------------------- /samples/apis/sample.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apigee/apigeecli/35e499a59fc1f86bcf15af22c0803c287d572854/samples/apis/sample.zip -------------------------------------------------------------------------------- /samples/appgroups.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "sampleAppGroup1", 4 | "channelUri": "channel1", 5 | "channelId": "1", 6 | "displayName": "Sample App Group 1", 7 | "status": "active", 8 | "attributes": [ 9 | { 10 | "name": "foo", 11 | "value": "bar" 12 | } 13 | ] 14 | }, 15 | { 16 | "name": "sampleAppGroup2", 17 | "channelUri": "channel2", 18 | "channelId": "2", 19 | "displayName": "Sample App Group 2", 20 | "status": "active" 21 | } 22 | ] 23 | -------------------------------------------------------------------------------- /samples/apps.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "attributes": [ 4 | { 5 | "name": "DisplayName", 6 | "value": "SampleApp" 7 | }, 8 | { 9 | "name": "Foo", 10 | "value": "Bar" 11 | } 12 | ], 13 | "credentials": [ 14 | { 15 | "apiProducts": [ 16 | { 17 | "apiproduct": "MockProduct", 18 | "status": "approved" 19 | } 20 | ], 21 | "consumerKey": "blah", 22 | "consumerSecret": "blah", 23 | "expiresAt": "-1", 24 | "status": "approved" 25 | } 26 | ], 27 | "developerId": "13a4ebde-79c6-4b33-848e-31a64f9d2145", 28 | "name": "SampleApp", 29 | "status": "approved" 30 | } 31 | ] 32 | -------------------------------------------------------------------------------- /samples/datacollectors.json: -------------------------------------------------------------------------------- 1 | { 2 | "dataCollectors": [ 3 | { 4 | "name": "dc_sampleCollector", 5 | "description": "Sample", 6 | "type": "STRING" 7 | } 8 | ] 9 | } 10 | -------------------------------------------------------------------------------- /samples/debugmask.json: -------------------------------------------------------------------------------- 1 | { 2 | "variables": [ 3 | "request.header.x-api-key", 4 | "request.header.x-apikey" 5 | ] 6 | } 7 | -------------------------------------------------------------------------------- /samples/developers.json: -------------------------------------------------------------------------------- 1 | { 2 | "developer": [ 3 | { 4 | "email": "sample@example.com", 5 | "firstName": "Sample", 6 | "lastName": "Developer", 7 | "userName": "sample", 8 | "developerId": "13a4ebde-79c6-4b33-848e-31a64f9d2145", 9 | "status": "active" 10 | } 11 | ] 12 | } 13 | -------------------------------------------------------------------------------- /samples/keystores.json: -------------------------------------------------------------------------------- 1 | [ 2 | "samplekeystore", 3 | "testkeystore" 4 | ] 5 | -------------------------------------------------------------------------------- /samples/kvms/env__envname__mapname__kvmfile__0.json: -------------------------------------------------------------------------------- 1 | { 2 | "keyValueEntries": [ 3 | { 4 | "name": "foo", 5 | "value": "bar" 6 | }, 7 | { 8 | "name": "hello", 9 | "value": "world" 10 | } 11 | ] 12 | } 13 | -------------------------------------------------------------------------------- /samples/kvms/proxy__proxyname__mapname__kvmfile__0.json: -------------------------------------------------------------------------------- 1 | { 2 | "keyValueEntries": [ 3 | { 4 | "name": "foo", 5 | "value": "bar" 6 | }, 7 | { 8 | "name": "hello", 9 | "value": "world" 10 | } 11 | ] 12 | } 13 | -------------------------------------------------------------------------------- /samples/references.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "reference", 4 | "resourceType": "KeyStore", 5 | "refers": "samplekeystore" 6 | } 7 | ] 8 | -------------------------------------------------------------------------------- /samples/sharedflows/sample-sf.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apigee/apigeecli/35e499a59fc1f86bcf15af22c0803c287d572854/samples/sharedflows/sample-sf.zip -------------------------------------------------------------------------------- /samples/targetservers.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "TS-Mock", 4 | "host": "mocktarget.apigee.net", 5 | "isEnabled": true, 6 | "port": 443, 7 | "sSLInfo": { 8 | "enabled": true 9 | }, 10 | "protocol": "HTTP" 11 | } 12 | ] 13 | -------------------------------------------------------------------------------- /test/README.md: -------------------------------------------------------------------------------- 1 | # Unit Tests for apigeecli 2 | 3 | ## Environment Variables 4 | 5 | Set the following environment variables: 6 | 7 | * `APIGEE_ORG` 8 | * `APIGEE_ENV` 9 | * `APIGEECLI_PATH` (path to the apigeecli folder) 10 | 11 | If the org was created with DRZ options, then also set: 12 | 13 | * `APIGEE_REGION` 14 | 15 | For tests involving Apigee API Portal, set: 16 | 17 | * `APIGEE_SITEID` 18 | 19 | For tests involving Apigee API Registry, set: 20 | 21 | * `APIGEE_REGION` 22 | 23 | ## Running the tests 24 | 25 | Run `go test internal/client/` or Run `go test internal/client/ -cover` to include code coverage 26 | -------------------------------------------------------------------------------- /test/allowed-values.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "id": "test", 4 | "displayName": "test", 5 | "description": "test", 6 | "immutable": false 7 | } 8 | ] 9 | -------------------------------------------------------------------------------- /test/api-ver.json: -------------------------------------------------------------------------------- 1 | { 2 | "displayName": "test version", 3 | "description": "test version description", 4 | "documentation": { 5 | "externalUri": "https://httpbin.org" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /test/api.json: -------------------------------------------------------------------------------- 1 | { 2 | "displayName": "test", 3 | "description": "test description", 4 | "documentation": { 5 | "externalUri": "https://httpbin.org" 6 | }, 7 | "owner": { 8 | "displayName": "Test User", 9 | "email": "user@example.com" 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /test/apigee-eg4a-err.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apigee/apigeecli/35e499a59fc1f86bcf15af22c0803c287d572854/test/apigee-eg4a-err.zip -------------------------------------------------------------------------------- /test/apigee-eg4a.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apigee/apigeecli/35e499a59fc1f86bcf15af22c0803c287d572854/test/apigee-eg4a.zip -------------------------------------------------------------------------------- /test/apiproduct-gqlop-group.json: -------------------------------------------------------------------------------- 1 | { 2 | "operationConfigs": [ 3 | { 4 | "apiSource": "httpbin", 5 | "operations": [ 6 | { 7 | "operationTypes": [ 8 | "query" 9 | ], 10 | "operation": "test" 11 | } 12 | ], 13 | "quota": { 14 | "limit": "1", 15 | "interval": "1", 16 | "timeUnit": "second" 17 | }, 18 | "attributes": [ 19 | { 20 | "name": "key1", 21 | "value": "value1" 22 | } 23 | ] 24 | } 25 | ], 26 | "operationConfigType": "proxy" 27 | } 28 | -------------------------------------------------------------------------------- /test/apiproduct-grpcop-group.json: -------------------------------------------------------------------------------- 1 | { 2 | "operationConfigs": [ 3 | { 4 | "apiSource": "petservice", 5 | "methods": [ 6 | "com.petstore.PetService" 7 | ], 8 | "quota": { 9 | "limit": "1", 10 | "interval": "1", 11 | "timeUnit": "second" 12 | }, 13 | "attributes": [ 14 | { 15 | "name": "key1", 16 | "value": "value1" 17 | } 18 | ], 19 | "service": "petservice" 20 | } 21 | ] 22 | } 23 | -------------------------------------------------------------------------------- /test/apiproduct-op-group-remote.json: -------------------------------------------------------------------------------- 1 | { 2 | "operationConfigs": [ 3 | { 4 | "apiSource": "customers.apps.svc.cluster.local:8080", 5 | "operations": [ 6 | { 7 | "resource": "/", 8 | "methods": [ 9 | "GET" 10 | ] 11 | } 12 | ], 13 | "quota": { 14 | "limit": "10", 15 | "interval": "1", 16 | "timeUnit": "minute" 17 | } 18 | } 19 | ], 20 | "operationConfigType": "remoteservice" 21 | } 22 | -------------------------------------------------------------------------------- /test/apiproduct-op-group.json: -------------------------------------------------------------------------------- 1 | { 2 | "operationConfigs": [ 3 | { 4 | "apiSource": "httpbin", 5 | "operations": [ 6 | { 7 | "resource": "/httpbin", 8 | "methods": [ 9 | "GET" 10 | ] 11 | } 12 | ], 13 | "quota": { 14 | "limit": "1", 15 | "interval": "1", 16 | "timeUnit": "second" 17 | }, 18 | "attributes": [ 19 | { 20 | "name": "key1", 21 | "value": "value1" 22 | } 23 | ] 24 | } 25 | ], 26 | "operationConfigType": "proxy" 27 | } 28 | -------------------------------------------------------------------------------- /test/apps_config.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "appFamily": "default", 4 | "appId": "f7d0434d-39aa-406c-ba91-93cb13d4e162", 5 | "attributes": [ 6 | { 7 | "name": "DisplayName", 8 | "value": "Inventory" 9 | }, 10 | { 11 | "name": "Notes", 12 | "value": "" 13 | } 14 | ], 15 | "callbackUrl": "", 16 | "createdAt": 1554568492202, 17 | "createdBy": "nandanks@gmail.com", 18 | "credentials": [ 19 | { 20 | "apiProducts": [ 21 | { 22 | "apiproduct": "inventory", 23 | "status": "approved" 24 | } 25 | ], 26 | "attributes": [], 27 | "consumerKey": "vX54G8uX1clxOJhZuEKDRuw3xZxaG8Gv", 28 | "consumerSecret": "9xRWKKp83mDRtDoT", 29 | "expiresAt": -1, 30 | "issuedAt": 1554568496578, 31 | "scopes": [], 32 | "status": "approved" 33 | } 34 | ], 35 | "developerId": "nandanks@gmail.com", 36 | "lastModifiedAt": 1554568492202, 37 | "lastModifiedBy": "nandanks@gmail.com", 38 | "name": "inventory1", 39 | "scopes": [], 40 | "status": "approved" 41 | } 42 | ] 43 | -------------------------------------------------------------------------------- /test/debugmask.json: -------------------------------------------------------------------------------- 1 | { 2 | "variables": [ 3 | "request.header.x-api-key", 4 | "request.header.x-apikey" 5 | ] 6 | } 7 | -------------------------------------------------------------------------------- /test/developers.json: -------------------------------------------------------------------------------- 1 | { 2 | "developer": [ 3 | { 4 | "email": "test1@user.com", 5 | "firstName": "Test1", 6 | "lastName": "User", 7 | "userName": "test1" 8 | }, 9 | { 10 | "email": "test2@user.com", 11 | "firstName": "Test2", 12 | "lastName": "User", 13 | "userName": "test2" 14 | }, 15 | { 16 | "email": "test3@user.com", 17 | "firstName": "Test3", 18 | "lastName": "User", 19 | "userName": "test3" 20 | } 21 | ] 22 | } 23 | -------------------------------------------------------------------------------- /test/kvm-json.json: -------------------------------------------------------------------------------- 1 | { 2 | "keyValueEntries": [ 3 | { 4 | "name": "json1", 5 | "value": "{\"message\":\"hello\"}" 6 | }, 7 | { 8 | "name": "basepath", 9 | "value": "/chris/duncan" 10 | }, 11 | { 12 | "name": "pathsuffix", 13 | "value": "/is/great" 14 | } 15 | ], 16 | "nextPageToken": "" 17 | } 18 | -------------------------------------------------------------------------------- /test/minspec-apikey.yaml: -------------------------------------------------------------------------------- 1 | # Copyright 2022 Google LLC 2 | # 3 | # Licensed under the Apache License, Version 2.0 (the "License"); 4 | # you may not use this file except in compliance with the License. 5 | # You may obtain a copy of the License at 6 | # 7 | # http://www.apache.org/licenses/LICENSE-2.0 8 | # 9 | # Unless required by applicable law or agreed to in writing, software 10 | # distributed under the License is distributed on an "AS IS" BASIS, 11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | # See the License for the specific language governing permissions and 13 | # limitations under the License. 14 | 15 | openapi: 3.0.2 16 | info: 17 | version: 0.0.1 18 | title: Minimal Spec 19 | description: | 20 | This specification contains the minimum information to generate an Apigee Proxy with PreFlow policies 21 | servers: 22 | - url: https://my.example.com/api 23 | security: 24 | - ApiKeyAuth: [] 25 | x-google-ratelimit: 26 | - name: test1_test 27 | rate-literal: 10ps 28 | identifier-ref: request.header.url #optional 29 | components: 30 | securitySchemes: 31 | ApiKeyAuth: 32 | type: apiKey 33 | in: header 34 | name: X-API-KEY 35 | -------------------------------------------------------------------------------- /test/minspec-oauth.yaml: -------------------------------------------------------------------------------- 1 | # Copyright 2022 Google LLC 2 | # 3 | # Licensed under the Apache License, Version 2.0 (the "License"); 4 | # you may not use this file except in compliance with the License. 5 | # You may obtain a copy of the License at 6 | # 7 | # http://www.apache.org/licenses/LICENSE-2.0 8 | # 9 | # Unless required by applicable law or agreed to in writing, software 10 | # distributed under the License is distributed on an "AS IS" BASIS, 11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | # See the License for the specific language governing permissions and 13 | # limitations under the License. 14 | 15 | openapi: 3.0.2 16 | servers: 17 | - url: https://my.example.com/api 18 | components: 19 | securitySchemes: 20 | proxy_auth: 21 | type: oauth2 22 | flows: 23 | clientCredentials: 24 | tokenUrl: 'https://api.example.com/oauth/token' 25 | refreshUrl: 'https://api.example.com/oauth/refresh' 26 | -------------------------------------------------------------------------------- /test/minspec-quota.yaml: -------------------------------------------------------------------------------- 1 | # Copyright 2022 Google LLC 2 | # 3 | # Licensed under the Apache License, Version 2.0 (the "License"); 4 | # you may not use this file except in compliance with the License. 5 | # You may obtain a copy of the License at 6 | # 7 | # http://www.apache.org/licenses/LICENSE-2.0 8 | # 9 | # Unless required by applicable law or agreed to in writing, software 10 | # distributed under the License is distributed on an "AS IS" BASIS, 11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | # See the License for the specific language governing permissions and 13 | # limitations under the License. 14 | 15 | openapi: 3.0.2 16 | servers: 17 | - url: https://my.example.com/api 18 | x-google-quota: 19 | - name: test1 20 | interval-literal: 1 21 | timeunit-literal: minute 22 | allow-literal: 1 23 | identifier-literal: request.headers.url 24 | -------------------------------------------------------------------------------- /test/minspec-ratelimit.yaml: -------------------------------------------------------------------------------- 1 | # Copyright 2022 Google LLC 2 | # 3 | # Licensed under the Apache License, Version 2.0 (the "License"); 4 | # you may not use this file except in compliance with the License. 5 | # You may obtain a copy of the License at 6 | # 7 | # http://www.apache.org/licenses/LICENSE-2.0 8 | # 9 | # Unless required by applicable law or agreed to in writing, software 10 | # distributed under the License is distributed on an "AS IS" BASIS, 11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | # See the License for the specific language governing permissions and 13 | # limitations under the License. 14 | 15 | openapi: 3.0.2 16 | servers: 17 | - url: https://my.example.com/api 18 | x-google-ratelimit: 19 | - name: test1_test 20 | rate-literal: 10ps 21 | identifier-ref: request.header.url #optional 22 | -------------------------------------------------------------------------------- /test/pkcs12.pfx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apigee/apigeecli/35e499a59fc1f86bcf15af22c0803c287d572854/test/pkcs12.pfx -------------------------------------------------------------------------------- /test/sample-cloud-build.yaml: -------------------------------------------------------------------------------- 1 | # Copyright 2023 Google LLC 2 | # 3 | # Licensed under the Apache License, Version 2.0 (the "License"); 4 | # you may not use this file except in compliance with the License. 5 | # You may obtain a copy of the License at 6 | # 7 | # http://www.apache.org/licenses/LICENSE-2.0 8 | # 9 | # Unless required by applicable law or agreed to in writing, software 10 | # distributed under the License is distributed on an "AS IS" BASIS, 11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | # See the License for the specific language governing permissions and 13 | # limitations under the License. 14 | 15 | steps: 16 | - id: 'Run apigeecli commands' 17 | name: ghcr.io/apigee/apigeecli:latest 18 | entrypoint: 'sh' 19 | args: 20 | - -c 21 | - | 22 | #setup preferences 23 | apigeecli prefs set --nocheck=true -o $PROJECT_ID 24 | apigeecli token cache --metadata-token 25 | 26 | apigeecli orgs list -------------------------------------------------------------------------------- /test/schema.graphql: -------------------------------------------------------------------------------- 1 | schema { 2 | query: Query 3 | } 4 | 5 | 6 | type Price { 7 | currency: String 8 | value: String 9 | } 10 | 11 | type Inventory { 12 | salePrice: Price 13 | sellOnGoogleQuantity: String 14 | availability: Int 15 | kind: String 16 | price: Price 17 | } 18 | 19 | type Item { 20 | inventory: Inventory 21 | productId: String 22 | storeCode: String 23 | } 24 | 25 | type LineItem { 26 | item: Item 27 | quantity: Int 28 | } 29 | 30 | 31 | type Order { 32 | operationId: ID! 33 | shipmentId: String 34 | lineItems: [LineItem!]! 35 | carrier: String 36 | trackingId: String 37 | } 38 | 39 | type Query { 40 | getOrder(operationId: ID!): Order 41 | listOrders: [Order!]! 42 | } -------------------------------------------------------------------------------- /test/self-signed.json: -------------------------------------------------------------------------------- 1 | { 2 | "subject": { 3 | "commonName": "mycert" 4 | } 5 | } -------------------------------------------------------------------------------- /test/sharedflowbundle/policies/Verify-API-Key-1.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 19 | Verify API Key-1 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /test/sharedflowbundle/sharedflows/default.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 19 | 20 | Verify-API-Key-1 21 | 22 | -------------------------------------------------------------------------------- /test/sharedflowbundle/test_flow.xml: -------------------------------------------------------------------------------- 1 | 16 | 17 | 18 | test_flow 19 | undefined 20 | 1611207547050 21 | 1667066833526 22 | 23 | Verify-API-Key-1 24 | 25 | 26 | default 27 | 28 | SharedFlow 29 | -------------------------------------------------------------------------------- /test/test.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2020 Google LLC 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | var test = {}; 18 | -------------------------------------------------------------------------------- /test/test_flow.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apigee/apigeecli/35e499a59fc1f86bcf15af22c0803c287d572854/test/test_flow.zip -------------------------------------------------------------------------------- /test/test_proxy.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apigee/apigeecli/35e499a59fc1f86bcf15af22c0803c287d572854/test/test_proxy.zip -------------------------------------------------------------------------------- /third-party/github.com/buger/jsonparser/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2016 Leonid Bugaev 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /third-party/github.com/dprotaso/go-yit/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright 2019 David Protasowski 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all 11 | copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 19 | SOFTWARE. 20 | -------------------------------------------------------------------------------- /third-party/github.com/getkin/kin-openapi/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017-2018 the project authors. 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /third-party/github.com/josharian/intern/license.md: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2019 Josh Bleecher Snyder 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /third-party/github.com/lestrrat-go/blackmagic/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 lestrrat-go 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /third-party/github.com/lestrrat-go/httpcc/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 lestrrat-go 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /third-party/github.com/lestrrat-go/httprc/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2022 lestrrat 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /third-party/github.com/lestrrat-go/iter/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 lestrrat-go 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /third-party/github.com/lestrrat-go/jwx/v2/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 lestrrat 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | 23 | -------------------------------------------------------------------------------- /third-party/github.com/lestrrat-go/option/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 lestrrat-go 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /third-party/github.com/mailru/easyjson/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2016 Mail.Ru Group 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 4 | 5 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 6 | 7 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 8 | -------------------------------------------------------------------------------- /third-party/github.com/mitchellh/mapstructure/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2013 Mitchell Hashimoto 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /third-party/github.com/mohae/deepcopy/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2014 Joel 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /third-party/github.com/otiai10/copy/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2018 otiai10 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /third-party/github.com/pb33f/libopenapi-validator/LICENSE.md: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | libopenapi-validator 4 | 5 | Copyright (c) 2023 Princess Beef Heavy Industries, LLC & Dave Shanley 6 | 7 | Permission is hereby granted, free of charge, to any person obtaining a copy 8 | of this software and associated documentation files (the "Software"), to deal 9 | in the Software without restriction, including without limitation the rights 10 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 11 | copies of the Software, and to permit persons to whom the Software is 12 | furnished to do so, subject to the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be included in all 15 | copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 20 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 21 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 22 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 23 | SOFTWARE. 24 | -------------------------------------------------------------------------------- /third-party/github.com/pb33f/libopenapi/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | libopenapi 4 | 5 | Copyright (c) 2022-2023 Princess Beef Heavy Industries & Dave Shanley 6 | 7 | Permission is hereby granted, free of charge, to any person obtaining a copy 8 | of this software and associated documentation files (the "Software"), to deal 9 | in the Software without restriction, including without limitation the rights 10 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 11 | copies of the Software, and to permit persons to whom the Software is 12 | furnished to do so, subject to the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be included in all 15 | copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 20 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 21 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 22 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 23 | SOFTWARE. 24 | -------------------------------------------------------------------------------- /third-party/github.com/perimeterx/marshmallow/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2022 PerimeterX 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /third-party/github.com/thedevsaddam/gojsonq/LICENSE.md: -------------------------------------------------------------------------------- 1 | # The MIT License (MIT) 2 | 3 | Copyright (c) 2018 Saddam H 4 | 5 | > Permission is hereby granted, free of charge, to any person obtaining a copy 6 | > of this software and associated documentation files (the "Software"), to deal 7 | > in the Software without restriction, including without limitation the rights 8 | > to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | > copies of the Software, and to permit persons to whom the Software is 10 | > furnished to do so, subject to the following conditions: 11 | > 12 | > The above copyright notice and this permission notice shall be included in 13 | > all copies or substantial portions of the Software. 14 | > 15 | > THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | > IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | > FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | > AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | > LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | > OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | > THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /third-party/github.com/vmware-labs/yaml-jsonpath/pkg/yamlpath/NOTICE: -------------------------------------------------------------------------------- 1 | yaml-jsonpath 2 | Copyright (c) 2020 VMware, Inc. All Rights Reserved. 3 | 4 | This product is licensed to you under the Apache 2.0 license (the "License"). You may not use this product except in compliance with the Apache 2.0 License. 5 | 6 | This product may include a number of subcomponents with separate copyright notices and license terms. Your use of these subcomponents is subject to the terms and conditions of the subcomponent's license, as noted in the LICENSE file. 7 | 8 | -------------------------------------------------------------------------------- /third-party/gopkg.in/yaml.v2/NOTICE: -------------------------------------------------------------------------------- 1 | Copyright 2011-2016 Canonical Ltd. 2 | 3 | Licensed under the Apache License, Version 2.0 (the "License"); 4 | you may not use this file except in compliance with the License. 5 | You may obtain a copy of the License at 6 | 7 | http://www.apache.org/licenses/LICENSE-2.0 8 | 9 | Unless required by applicable law or agreed to in writing, software 10 | distributed under the License is distributed on an "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | See the License for the specific language governing permissions and 13 | limitations under the License. 14 | -------------------------------------------------------------------------------- /third-party/gopkg.in/yaml.v3/NOTICE: -------------------------------------------------------------------------------- 1 | Copyright 2011-2016 Canonical Ltd. 2 | 3 | Licensed under the Apache License, Version 2.0 (the "License"); 4 | you may not use this file except in compliance with the License. 5 | You may obtain a copy of the License at 6 | 7 | http://www.apache.org/licenses/LICENSE-2.0 8 | 9 | Unless required by applicable law or agreed to in writing, software 10 | distributed under the License is distributed on an "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | See the License for the specific language governing permissions and 13 | limitations under the License. 14 | --------------------------------------------------------------------------------