{"id":36471138,"url":"https://github.com/brightpuddle/requery","last_synced_at":"2026-01-12T00:37:49.633Z","repository":{"id":64303954,"uuid":"227019513","full_name":"brightpuddle/requery","owner":"brightpuddle","description":"ACI moquery clone that allows remote queries and backup file queries.","archived":false,"fork":false,"pushed_at":"2022-07-25T23:13:45.000Z","size":31,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-06-20T06:29:13.101Z","etag":null,"topics":["aci","cisco","cisco-aci","cli-tool","devops","golang","netops"],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/brightpuddle.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-12-10T03:18:22.000Z","updated_at":"2024-06-20T06:29:13.102Z","dependencies_parsed_at":"2023-01-15T10:00:54.076Z","dependency_job_id":null,"html_url":"https://github.com/brightpuddle/requery","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/brightpuddle/requery","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brightpuddle%2Frequery","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brightpuddle%2Frequery/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brightpuddle%2Frequery/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brightpuddle%2Frequery/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/brightpuddle","download_url":"https://codeload.github.com/brightpuddle/requery/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brightpuddle%2Frequery/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28329806,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-12T00:36:25.062Z","status":"ssl_error","status_checked_at":"2026-01-12T00:36:15.229Z","response_time":60,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aci","cisco","cisco-aci","cli-tool","devops","golang","netops"],"created_at":"2026-01-12T00:37:49.125Z","updated_at":"2026-01-12T00:37:49.623Z","avatar_url":"https://github.com/brightpuddle.png","language":"Go","readme":"# reQuery\nreQuery is an ACI moquery clone that performs remote queries and queries against the backup file. This tool is based on the [goACI](https://github.com/brightpuddle/goaci) library.\n\n\n## Getting Started\n\nDownload the latest release from [the releases tab](https://github.com/brightpuddle/requery/releases).\n\nrequery is similar to moquery with a few key differences. Since requery runs remotely it always requires a \"target\" which is the positional argument in the examples above. The target can be an APIC hostname or a `.tar.gz` configuration backup from the APIC.\n\nQuery parameters, e.g. `-x` and `-f` only work against the live configuration. For filtering results from the backup, use the Unix CLI tools, e.g. grep, egrep, awk, etc.\n\n\n```\nrequery $ requery apic -u admin -d uni/tn-infra\nPassword: Total count: 1\n\n# fvTenant.attributes\n{\n  \"annotation\": \"\",\n  \"childAction\": \"\",\n  \"descr\": \"\",\n  \"dn\": \"uni/tn-infra\",\n  \"extMngdBy\": \"\",\n  \"lcOwn\": \"local\",\n  \"modTs\": \"2018-01-10T18:07:57.861+00:00\",\n  \"monPolDn\": \"uni/tn-common/monepg-default\",\n  \"name\": \"infra\",\n  \"nameAlias\": \"\",\n  \"ownerKey\": \"\",\n  \"ownerTag\": \"\",\n  \"status\": \"\",\n  \"uid\": \"0\"\n}\n\nrequery $ requery ~/src/tmp/config.tar.gz -d uni/tn-infra\nTotal count: 1\n\n# fvTenant.attributes\n{\n  \"annotation\": \"\",\n  \"descr\": \"\",\n  \"dn\": \"uni/tn-infra\",\n  \"name\": \"infra\",\n  \"nameAlias\": \"\",\n  \"ownerKey\": \"\",\n  \"ownerTag\": \"\"\n}\n\nrequery $ requery ~/src/tmp/config.tar.gz -c fvBD\nTotal count: 4\n\n# fvBD.attributes\n{\n  \"OptimizeWanBandwidth\": \"no\",\n  \"annotation\": \"\",\n  \"arpFlood\": \"no\",\n  \"descr\": \"\",\n  \"dn\": \"uni/tn-infra/BD-ave-ctrl\",\n  \"epClear\": \"no\",\n  \"epMoveDetectMode\": \"\",\n  \"intersiteBumTrafficAllow\": \"no\",\n  \"intersiteL2Stretch\": \"no\",\n  \"ipLearning\": \"yes\",\n  \"limitIpLearnToSubnets\": \"yes\",\n  \"llAddr\": \"::\",\n  \"mac\": \"00:22:BD:F8:19:FF\",\n  \"mcastAllow\": \"no\",\n  \"multiDstPktAct\": \"bd-flood\",\n  \"name\": \"ave-ctrl\",\n  \"nameAlias\": \"\",\n  \"ownerKey\": \"\",\n  \"ownerTag\": \"\",\n  \"type\": \"regular\",\n  \"unicastRoute\": \"yes\",\n  \"unkMacUcastAct\": \"proxy\",\n  \"unkMcastAct\": \"flood\",\n  \"vmac\": \"not-applicable\"\n}\n...\n```\n\n## Differences from moquery\n\n### Filtering data\nmoquery uses a unique filtering syntax for the `-f` filter option, e.g. `fv.BD.name==\"my-tenant\"`. reQuery uses the same query syntax as the API, e.g. `eq(fvBD.name,\"my-tenant\")`, so the queries are interchangable with other documentation, other tools, and Visore.\n\n### Output\nreQuery always outputs in JSON; however, the data structure is flattened and is roughly similar in appearance to moquery.\n\n### CLI arguments\n\n#### Not implemented:\n\n`-a --attrs` - reQuery always displays all attributes. Use external tools like awk and grep to limit results to config only.\n\n`-o --output` - reQuery only outputs JSON.\n\n`-p --port` - Just add the port to the hostname/IP, e.g. `10.0.0.1:443`\n\n#### Renamed:\n`-c --klass` - This was renamed to `-c --class`.\n\n\n#### Unique to requery:\n`-m --mode` - By default the mode is determined by the extention, i.e. .tar.gz is a backup file. If this doesn't apply, use the mode option to specify `http` or `backup`.\n\n\n## Feedback\nFeedback and/or pull requests welcome.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrightpuddle%2Frequery","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbrightpuddle%2Frequery","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrightpuddle%2Frequery/lists"}