@prospera/eprospera-cli 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +13 -0
- package/LICENSE +21 -0
- package/README.md +140 -0
- package/bin/eprospera.js +3 -0
- package/cli.ocs.yaml +406 -0
- package/dist/bundle/eprospera.mjs +28349 -0
- package/dist/completions/eprospera.bash +7 -0
- package/dist/completions/eprospera.fish +2 -0
- package/dist/completions/eprospera.ps1 +7 -0
- package/dist/completions/eprospera.zsh +4 -0
- package/dist/src/api/client.d.ts +29 -0
- package/dist/src/api/client.js +131 -0
- package/dist/src/api/errors.d.ts +11 -0
- package/dist/src/api/errors.js +125 -0
- package/dist/src/api/generated.d.ts +1159 -0
- package/dist/src/api/generated.js +6 -0
- package/dist/src/commands/application/create.d.ts +5 -0
- package/dist/src/commands/application/create.js +62 -0
- package/dist/src/commands/application/get.d.ts +2 -0
- package/dist/src/commands/application/get.js +11 -0
- package/dist/src/commands/application/list.d.ts +2 -0
- package/dist/src/commands/application/list.js +8 -0
- package/dist/src/commands/application/pay.d.ts +5 -0
- package/dist/src/commands/application/pay.js +27 -0
- package/dist/src/commands/application/watch.d.ts +7 -0
- package/dist/src/commands/application/watch.js +42 -0
- package/dist/src/commands/auth/login.d.ts +7 -0
- package/dist/src/commands/auth/login.js +60 -0
- package/dist/src/commands/auth/logout.d.ts +2 -0
- package/dist/src/commands/auth/logout.js +14 -0
- package/dist/src/commands/auth/whoami.d.ts +2 -0
- package/dist/src/commands/auth/whoami.js +19 -0
- package/dist/src/commands/completion.d.ts +3 -0
- package/dist/src/commands/completion.js +80 -0
- package/dist/src/commands/config/get.d.ts +2 -0
- package/dist/src/commands/config/get.js +9 -0
- package/dist/src/commands/config/list.d.ts +2 -0
- package/dist/src/commands/config/list.js +7 -0
- package/dist/src/commands/config/set.d.ts +2 -0
- package/dist/src/commands/config/set.js +9 -0
- package/dist/src/commands/config/unset.d.ts +2 -0
- package/dist/src/commands/config/unset.js +9 -0
- package/dist/src/commands/entity/documents.d.ts +2 -0
- package/dist/src/commands/entity/documents.js +11 -0
- package/dist/src/commands/entity/get.d.ts +2 -0
- package/dist/src/commands/entity/get.js +11 -0
- package/dist/src/commands/entity/search.d.ts +2 -0
- package/dist/src/commands/entity/search.js +17 -0
- package/dist/src/commands/entity/verify.d.ts +2 -0
- package/dist/src/commands/entity/verify.js +9 -0
- package/dist/src/commands/files.d.ts +2 -0
- package/dist/src/commands/files.js +24 -0
- package/dist/src/commands/me/id-verification.d.ts +2 -0
- package/dist/src/commands/me/id-verification.js +8 -0
- package/dist/src/commands/me/profile.d.ts +2 -0
- package/dist/src/commands/me/profile.js +8 -0
- package/dist/src/commands/me/residency.d.ts +2 -0
- package/dist/src/commands/me/residency.js +8 -0
- package/dist/src/commands/runtime.d.ts +56 -0
- package/dist/src/commands/runtime.js +101 -0
- package/dist/src/commands/schema.d.ts +2 -0
- package/dist/src/commands/schema.js +13 -0
- package/dist/src/config/store.d.ts +14 -0
- package/dist/src/config/store.js +99 -0
- package/dist/src/credentials/resolve.d.ts +15 -0
- package/dist/src/credentials/resolve.js +63 -0
- package/dist/src/credentials/store.d.ts +22 -0
- package/dist/src/credentials/store.js +184 -0
- package/dist/src/credentials/types.d.ts +15 -0
- package/dist/src/credentials/types.js +5 -0
- package/dist/src/errors.d.ts +39 -0
- package/dist/src/errors.js +38 -0
- package/dist/src/index.d.ts +4 -0
- package/dist/src/index.js +244 -0
- package/dist/src/output/format.d.ts +27 -0
- package/dist/src/output/format.js +126 -0
- package/dist/src/output/table.d.ts +5 -0
- package/dist/src/output/table.js +124 -0
- package/dist/src/output/tty.d.ts +26 -0
- package/dist/src/output/tty.js +41 -0
- package/dist/src/polling/watch.d.ts +19 -0
- package/dist/src/polling/watch.js +86 -0
- package/dist/src/prompts/confirm.d.ts +2 -0
- package/dist/src/prompts/confirm.js +19 -0
- package/dist/src/scopes/check.d.ts +17 -0
- package/dist/src/scopes/check.js +64 -0
- package/dist/src/scopes/map.d.ts +81 -0
- package/dist/src/scopes/map.js +76 -0
- package/dist/src/version.d.ts +1 -0
- package/dist/src/version.js +35 -0
- package/package.json +70 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to `@prospera/eprospera-cli` will be documented in this
|
|
4
|
+
file. This file is managed by [Changesets](https://github.com/changesets/changesets);
|
|
5
|
+
do not edit it by hand. To propose a change to published behavior, run
|
|
6
|
+
`pnpm exec changeset` and commit the generated entry under `.changeset/`.
|
|
7
|
+
|
|
8
|
+
The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and
|
|
9
|
+
the project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
10
|
+
|
|
11
|
+
## Unreleased
|
|
12
|
+
|
|
13
|
+
- Initial scaffold. No published releases yet.
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Prospera
|
|
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.
|
package/README.md
ADDED
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
# eprospera-cli
|
|
2
|
+
|
|
3
|
+
TypeScript command-line interface for the e-Prospera public API.
|
|
4
|
+
|
|
5
|
+
`eprospera` is designed for scriptable legal-entity, application, identity, auth,
|
|
6
|
+
configuration, completion, and schema workflows. The CLI is JSON-friendly by
|
|
7
|
+
default so it can be used cleanly from shells, CI jobs, and agentic tools.
|
|
8
|
+
|
|
9
|
+
## Status
|
|
10
|
+
|
|
11
|
+
This repository is in v0.1 release preparation. The OpenCLI command spec,
|
|
12
|
+
generated API types, command implementations, completion/doc generation scripts,
|
|
13
|
+
validation tooling, CI, release automation, and bundled executable build are in
|
|
14
|
+
place. The npm package is not published until the first Changesets release runs.
|
|
15
|
+
|
|
16
|
+
## Requirements
|
|
17
|
+
|
|
18
|
+
- Node.js 20 or newer
|
|
19
|
+
- pnpm 10.x
|
|
20
|
+
|
|
21
|
+
## Install
|
|
22
|
+
|
|
23
|
+
Once published:
|
|
24
|
+
|
|
25
|
+
```sh
|
|
26
|
+
npm install -g @prospera/eprospera-cli
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
For local development:
|
|
30
|
+
|
|
31
|
+
```sh
|
|
32
|
+
pnpm install
|
|
33
|
+
pnpm run gen:all
|
|
34
|
+
pnpm run build
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
## Command Surface
|
|
38
|
+
|
|
39
|
+
The v0.1 command surface is defined in `cli.ocs.yaml`.
|
|
40
|
+
|
|
41
|
+
| Area | Commands |
|
|
42
|
+
| --- | --- |
|
|
43
|
+
| Legal entities | `entity verify`, `entity search`, `entity get`, `entity documents` |
|
|
44
|
+
| Applications | `application list`, `application create`, `application get`, `application pay`, `application watch` |
|
|
45
|
+
| Current user | `me profile`, `me residency`, `me id-verification` |
|
|
46
|
+
| Auth | `auth login`, `auth whoami`, `auth logout` |
|
|
47
|
+
| Config | `config get`, `config set`, `config list`, `config unset` |
|
|
48
|
+
| Shells | `completion bash`, `completion zsh`, `completion fish`, `completion powershell` |
|
|
49
|
+
| Schema | `schema` |
|
|
50
|
+
|
|
51
|
+
Common global flags:
|
|
52
|
+
|
|
53
|
+
```sh
|
|
54
|
+
--json
|
|
55
|
+
--raw
|
|
56
|
+
--fields id,status
|
|
57
|
+
--api-key <value>
|
|
58
|
+
--dry-run
|
|
59
|
+
--yes
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
## Authentication
|
|
63
|
+
|
|
64
|
+
The CLI is intended to resolve credentials in this order:
|
|
65
|
+
|
|
66
|
+
1. `--api-key <value>`
|
|
67
|
+
2. `EPROSPERA_API_KEY`
|
|
68
|
+
3. Credentials saved by `eprospera auth login`
|
|
69
|
+
|
|
70
|
+
Do not commit API keys, request payloads, `.env` files, or exported credentials.
|
|
71
|
+
The repository ignore rules are configured to keep those out of the public repo.
|
|
72
|
+
|
|
73
|
+
## Development
|
|
74
|
+
|
|
75
|
+
Useful scripts:
|
|
76
|
+
|
|
77
|
+
```sh
|
|
78
|
+
pnpm run gen:api # Generate TypeScript types from the public OpenAPI spec
|
|
79
|
+
pnpm run gen:docs # Regenerate tracked command docs under docs/commands/
|
|
80
|
+
pnpm run gen:completions # Generate shell completions under dist/
|
|
81
|
+
pnpm run validate:ocs # Validate cli.ocs.yaml against the OpenCLI schema
|
|
82
|
+
pnpm run typecheck # Run TypeScript without emitting files
|
|
83
|
+
pnpm test # Run unit tests
|
|
84
|
+
pnpm run test:e2e # Run opt-in staging e2e tests when EPROSPERA_E2E=1
|
|
85
|
+
pnpm run check # Run formatting/lint checks and typecheck
|
|
86
|
+
pnpm run bundle # Build a portable ncc executable at dist/bundle/
|
|
87
|
+
pnpm run pack:smoke # Install the packed tarball in a clean temp project
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
The pre-commit hook runs `pnpm run gen:all` to keep generated artifacts current.
|
|
91
|
+
|
|
92
|
+
## Packaging
|
|
93
|
+
|
|
94
|
+
The npm package is configured to include the runtime entrypoint, compiled output,
|
|
95
|
+
the OpenCLI spec, license, changelog, and README. It excludes source, tests,
|
|
96
|
+
scripts, local docs, CI config, source maps, logs, and environment files.
|
|
97
|
+
|
|
98
|
+
Before publishing or tagging a release, check the package contents:
|
|
99
|
+
|
|
100
|
+
```sh
|
|
101
|
+
npm pack --dry-run --json --ignore-scripts
|
|
102
|
+
pnpm run pack:smoke
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
## Release
|
|
106
|
+
|
|
107
|
+
The first public release should happen only after the full local gate passes:
|
|
108
|
+
|
|
109
|
+
```sh
|
|
110
|
+
pnpm run gen:all
|
|
111
|
+
pnpm run check
|
|
112
|
+
pnpm run validate:ocs
|
|
113
|
+
pnpm test
|
|
114
|
+
pnpm run build
|
|
115
|
+
pnpm run bundle
|
|
116
|
+
npm pack --dry-run --json --ignore-scripts
|
|
117
|
+
pnpm run pack:smoke
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
For the first public publish, use one of these npm auth paths:
|
|
121
|
+
|
|
122
|
+
- Manual: publish from a logged-in maintainer account with a one-time code.
|
|
123
|
+
- Automated: configure the repository `NPM_TOKEN` secret with a granular token
|
|
124
|
+
that can publish `@prospera/eprospera-cli` and bypass publish-time 2FA.
|
|
125
|
+
|
|
126
|
+
After the package exists on npm, prefer npm trusted publishing with GitHub
|
|
127
|
+
Actions publisher `Honduras-Prospera-inc/eprospera-cli` and workflow filename
|
|
128
|
+
`release.yml`, then remove any long-lived publish token.
|
|
129
|
+
|
|
130
|
+
Manual first publish:
|
|
131
|
+
|
|
132
|
+
```sh
|
|
133
|
+
npm publish --access public --otp <one-time-code>
|
|
134
|
+
npm install -g @prospera/eprospera-cli
|
|
135
|
+
eprospera --help
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
## License
|
|
139
|
+
|
|
140
|
+
MIT
|
package/bin/eprospera.js
ADDED
package/cli.ocs.yaml
ADDED
|
@@ -0,0 +1,406 @@
|
|
|
1
|
+
$schema: https://opencli.org/draft.json
|
|
2
|
+
opencli: "0.1"
|
|
3
|
+
info:
|
|
4
|
+
title: eprospera
|
|
5
|
+
version: "0.1.0"
|
|
6
|
+
summary: Command-line access to the e-Prospera public API.
|
|
7
|
+
description: >
|
|
8
|
+
Agent-key-first TypeScript CLI for e-Prospera legal entity, application,
|
|
9
|
+
identity, authentication, configuration, completion, and schema workflows.
|
|
10
|
+
contact:
|
|
11
|
+
name: Prospera
|
|
12
|
+
url: https://docs.eprospera.com
|
|
13
|
+
license:
|
|
14
|
+
name: MIT License
|
|
15
|
+
identifier: MIT
|
|
16
|
+
url: https://opensource.org/license/mit
|
|
17
|
+
conventions:
|
|
18
|
+
groupOptions: true
|
|
19
|
+
optionSeparator: " "
|
|
20
|
+
command:
|
|
21
|
+
name: eprospera
|
|
22
|
+
description: Command-line wrapper over the e-Prospera public API.
|
|
23
|
+
options:
|
|
24
|
+
- name: --json
|
|
25
|
+
recursive: true
|
|
26
|
+
group: Output
|
|
27
|
+
description: Pretty-print JSON to stdout and suppress color, spinners, and incidental output.
|
|
28
|
+
- name: --raw
|
|
29
|
+
recursive: true
|
|
30
|
+
group: Output
|
|
31
|
+
description: Print compact single-line JSON to stdout.
|
|
32
|
+
- name: --fields
|
|
33
|
+
recursive: true
|
|
34
|
+
group: Output
|
|
35
|
+
description: Restrict output keys for read commands.
|
|
36
|
+
arguments:
|
|
37
|
+
- name: keys
|
|
38
|
+
required: true
|
|
39
|
+
description: Comma-separated output fields, such as id,statusId,name.
|
|
40
|
+
- name: --quiet
|
|
41
|
+
recursive: true
|
|
42
|
+
group: Output
|
|
43
|
+
description: Suppress incidental human output.
|
|
44
|
+
- name: --yes
|
|
45
|
+
aliases: [-y]
|
|
46
|
+
recursive: true
|
|
47
|
+
group: Interaction
|
|
48
|
+
description: Skip confirmation prompts.
|
|
49
|
+
- name: --api-key
|
|
50
|
+
recursive: true
|
|
51
|
+
group: Authentication
|
|
52
|
+
description: Use this bearer token instead of environment or stored credentials.
|
|
53
|
+
arguments:
|
|
54
|
+
- name: value
|
|
55
|
+
required: true
|
|
56
|
+
description: Agent Key, standard API key, or OAuth access token.
|
|
57
|
+
- name: --dry-run
|
|
58
|
+
recursive: true
|
|
59
|
+
group: Execution
|
|
60
|
+
description: Validate locally and print the request that would be sent.
|
|
61
|
+
- name: --help
|
|
62
|
+
aliases: [-h]
|
|
63
|
+
recursive: true
|
|
64
|
+
group: Help
|
|
65
|
+
description: Show help for a command.
|
|
66
|
+
- name: --version
|
|
67
|
+
recursive: true
|
|
68
|
+
group: Help
|
|
69
|
+
description: Show the CLI version.
|
|
70
|
+
- name: --no-auto-json
|
|
71
|
+
recursive: true
|
|
72
|
+
group: Output
|
|
73
|
+
description: Disable automatic JSON output when stdout is not a TTY.
|
|
74
|
+
- name: --skip-scope-check
|
|
75
|
+
recursive: true
|
|
76
|
+
group: Authentication
|
|
77
|
+
description: Skip cached local Agent Key scope preflight.
|
|
78
|
+
exitCodes:
|
|
79
|
+
- code: 0
|
|
80
|
+
description: Success.
|
|
81
|
+
- code: 1
|
|
82
|
+
description: Generic failure or unexpected error.
|
|
83
|
+
- code: 2
|
|
84
|
+
description: Invalid usage, bad flag, or missing argument.
|
|
85
|
+
- code: 3
|
|
86
|
+
description: Authentication failure, including 401 or no credential configured.
|
|
87
|
+
- code: 4
|
|
88
|
+
description: Authorization failure, including missing scope or revoked Manifestation of Will.
|
|
89
|
+
- code: 5
|
|
90
|
+
description: Resource not found, usually 404.
|
|
91
|
+
- code: 6
|
|
92
|
+
description: Conflict, including 409, name collision, or impossible state transition.
|
|
93
|
+
- code: 7
|
|
94
|
+
description: Rate limit, usually 429.
|
|
95
|
+
- code: 8
|
|
96
|
+
description: Validation error, usually 400.
|
|
97
|
+
- code: 9
|
|
98
|
+
description: Timeout, including polling or network timeout.
|
|
99
|
+
- code: 10
|
|
100
|
+
description: Application or coupon entered a terminal failure state.
|
|
101
|
+
commands:
|
|
102
|
+
- name: entity
|
|
103
|
+
description: Verify, search, inspect, and fetch documents for legal entities.
|
|
104
|
+
commands:
|
|
105
|
+
- name: verify
|
|
106
|
+
description: Verify whether an RPN exists and is active.
|
|
107
|
+
arguments:
|
|
108
|
+
- name: rpn
|
|
109
|
+
required: true
|
|
110
|
+
description: 14-digit resident permit number starting with 8 or 9.
|
|
111
|
+
examples:
|
|
112
|
+
- eprospera --json entity verify 80000000000012
|
|
113
|
+
metadata:
|
|
114
|
+
- name: endpoint
|
|
115
|
+
value: POST /api/v1/verify_rpn
|
|
116
|
+
- name: requiredScope
|
|
117
|
+
value: agent:verify_rpn
|
|
118
|
+
- name: credentialTypes
|
|
119
|
+
value: [ak, sk]
|
|
120
|
+
- name: search
|
|
121
|
+
description: Search the legal-entity registry by name or partial RPN.
|
|
122
|
+
arguments:
|
|
123
|
+
- name: query
|
|
124
|
+
required: true
|
|
125
|
+
description: Free-text query. Multi-word input is split by the API.
|
|
126
|
+
examples:
|
|
127
|
+
- eprospera --json entity search "Acme Holdings"
|
|
128
|
+
metadata:
|
|
129
|
+
- name: endpoint
|
|
130
|
+
value: POST /api/v1/registries/legal_entities/search
|
|
131
|
+
- name: requiredScope
|
|
132
|
+
value: agent:registry.search
|
|
133
|
+
- name: credentialTypes
|
|
134
|
+
value: [ak, sk]
|
|
135
|
+
- name: get
|
|
136
|
+
description: Fetch one legal entity by UUID.
|
|
137
|
+
arguments:
|
|
138
|
+
- name: id
|
|
139
|
+
required: true
|
|
140
|
+
description: Legal entity UUID.
|
|
141
|
+
examples:
|
|
142
|
+
- eprospera --json entity get 00000000-0000-4000-8000-000000000000
|
|
143
|
+
metadata:
|
|
144
|
+
- name: endpoint
|
|
145
|
+
value: GET /api/v1/legal_entities/{id}
|
|
146
|
+
- name: requiredScope
|
|
147
|
+
value: agent:entity.read
|
|
148
|
+
- name: credentialTypes
|
|
149
|
+
value: [ak, sk]
|
|
150
|
+
- name: documents
|
|
151
|
+
description: Fetch documents for one legal entity.
|
|
152
|
+
arguments:
|
|
153
|
+
- name: id
|
|
154
|
+
required: true
|
|
155
|
+
description: Legal entity UUID.
|
|
156
|
+
examples:
|
|
157
|
+
- eprospera --json entity documents 00000000-0000-4000-8000-000000000000
|
|
158
|
+
metadata:
|
|
159
|
+
- name: endpoint
|
|
160
|
+
value: GET /api/v1/legal_entities/{id}/documents
|
|
161
|
+
- name: requiredScope
|
|
162
|
+
value: agent:entity.documents.read
|
|
163
|
+
- name: credentialTypes
|
|
164
|
+
value: [ak, sk]
|
|
165
|
+
- name: application
|
|
166
|
+
description: Create, pay, list, inspect, and watch legal-entity applications.
|
|
167
|
+
commands:
|
|
168
|
+
- name: list
|
|
169
|
+
description: List API-created legal-entity applications visible to the credential.
|
|
170
|
+
examples:
|
|
171
|
+
- eprospera --json application list --fields id,statusId,legalEntityId
|
|
172
|
+
metadata:
|
|
173
|
+
- name: endpoint
|
|
174
|
+
value: GET /api/v1/legal_entity_applications
|
|
175
|
+
- name: requiredScope
|
|
176
|
+
value: agent:entity.application.read
|
|
177
|
+
- name: credentialTypes
|
|
178
|
+
value: [ak, sk]
|
|
179
|
+
- name: create
|
|
180
|
+
description: Create a legal-entity application from a JSON request file.
|
|
181
|
+
interactive: true
|
|
182
|
+
options:
|
|
183
|
+
- name: --file
|
|
184
|
+
description: Read the application request body from a JSON file.
|
|
185
|
+
arguments:
|
|
186
|
+
- name: path
|
|
187
|
+
required: true
|
|
188
|
+
description: Path to a JSON request body.
|
|
189
|
+
examples:
|
|
190
|
+
- eprospera --json --yes application create --file application.json
|
|
191
|
+
metadata:
|
|
192
|
+
- name: endpoint
|
|
193
|
+
value: POST /api/v1/legal_entity_applications
|
|
194
|
+
- name: requiredScope
|
|
195
|
+
value: agent:entity.application.create
|
|
196
|
+
- name: credentialTypes
|
|
197
|
+
value: [ak, sk]
|
|
198
|
+
- name: get
|
|
199
|
+
description: Fetch one legal-entity application by UUID.
|
|
200
|
+
arguments:
|
|
201
|
+
- name: id
|
|
202
|
+
required: true
|
|
203
|
+
description: Legal entity application UUID.
|
|
204
|
+
examples:
|
|
205
|
+
- eprospera --json application get 00000000-0000-4000-8000-000000000000
|
|
206
|
+
metadata:
|
|
207
|
+
- name: endpoint
|
|
208
|
+
value: GET /api/v1/legal_entity_applications/{id}
|
|
209
|
+
- name: requiredScope
|
|
210
|
+
value: agent:entity.application.read
|
|
211
|
+
- name: credentialTypes
|
|
212
|
+
value: [ak, sk]
|
|
213
|
+
- name: pay
|
|
214
|
+
description: Apply a fully covering coupon to a legal-entity application.
|
|
215
|
+
interactive: true
|
|
216
|
+
arguments:
|
|
217
|
+
- name: id
|
|
218
|
+
required: true
|
|
219
|
+
description: Legal entity application UUID.
|
|
220
|
+
options:
|
|
221
|
+
- name: --coupon
|
|
222
|
+
required: true
|
|
223
|
+
description: Coupon code to apply.
|
|
224
|
+
arguments:
|
|
225
|
+
- name: code
|
|
226
|
+
required: true
|
|
227
|
+
description: Coupon code.
|
|
228
|
+
examples:
|
|
229
|
+
- eprospera --json --yes application pay 00000000-0000-4000-8000-000000000000 --coupon EXAMPLE_COUPON
|
|
230
|
+
metadata:
|
|
231
|
+
- name: endpoint
|
|
232
|
+
value: POST /api/v1/legal_entity_applications/{id}/pay/coupon
|
|
233
|
+
- name: requiredScope
|
|
234
|
+
value: agent:entity.application.pay
|
|
235
|
+
- name: credentialTypes
|
|
236
|
+
value: [ak, sk]
|
|
237
|
+
- name: watch
|
|
238
|
+
description: Poll an application until approval, rejection, payment failure, or timeout.
|
|
239
|
+
arguments:
|
|
240
|
+
- name: id
|
|
241
|
+
required: true
|
|
242
|
+
description: Legal entity application UUID.
|
|
243
|
+
options:
|
|
244
|
+
- name: --timeout
|
|
245
|
+
description: Hard polling timeout.
|
|
246
|
+
arguments:
|
|
247
|
+
- name: duration
|
|
248
|
+
required: true
|
|
249
|
+
description: Duration such as 30m or 1h.
|
|
250
|
+
- name: --initial-interval
|
|
251
|
+
description: Polling interval before backoff.
|
|
252
|
+
arguments:
|
|
253
|
+
- name: duration
|
|
254
|
+
required: true
|
|
255
|
+
description: Duration such as 30s.
|
|
256
|
+
- name: --max-interval
|
|
257
|
+
description: Maximum polling interval after backoff.
|
|
258
|
+
arguments:
|
|
259
|
+
- name: duration
|
|
260
|
+
required: true
|
|
261
|
+
description: Duration such as 5m.
|
|
262
|
+
examples:
|
|
263
|
+
- eprospera --json application watch 00000000-0000-4000-8000-000000000000 --timeout 30m
|
|
264
|
+
metadata:
|
|
265
|
+
- name: endpoint
|
|
266
|
+
value: GET /api/v1/legal_entity_applications/{id}
|
|
267
|
+
- name: requiredScope
|
|
268
|
+
value: agent:entity.application.read
|
|
269
|
+
- name: credentialTypes
|
|
270
|
+
value: [ak, sk]
|
|
271
|
+
- name: me
|
|
272
|
+
description: Read profile data for the Agent Key owner or OAuth user.
|
|
273
|
+
commands:
|
|
274
|
+
- name: profile
|
|
275
|
+
description: Fetch the natural-person profile for the credential owner.
|
|
276
|
+
examples:
|
|
277
|
+
- eprospera --json me profile
|
|
278
|
+
metadata:
|
|
279
|
+
- name: endpoint
|
|
280
|
+
value: GET /api/v1/me/natural-person
|
|
281
|
+
- name: requiredScope
|
|
282
|
+
value: agent:person.details.read
|
|
283
|
+
- name: oauthScope
|
|
284
|
+
value: eprospera:person.details.read
|
|
285
|
+
- name: credentialTypes
|
|
286
|
+
value: [ak, oauth]
|
|
287
|
+
- name: residency
|
|
288
|
+
description: Fetch current or historical residency status for the credential owner.
|
|
289
|
+
examples:
|
|
290
|
+
- eprospera --json me residency
|
|
291
|
+
metadata:
|
|
292
|
+
- name: endpoint
|
|
293
|
+
value: GET /api/v1/me/natural-person/residency
|
|
294
|
+
- name: requiredScope
|
|
295
|
+
value: agent:person.residency.read
|
|
296
|
+
- name: oauthScope
|
|
297
|
+
value: eprospera:person.residency.read
|
|
298
|
+
- name: credentialTypes
|
|
299
|
+
value: [ak, oauth]
|
|
300
|
+
- name: id-verification
|
|
301
|
+
description: Fetch ID-verification artifact URLs for the credential owner.
|
|
302
|
+
examples:
|
|
303
|
+
- eprospera --json me id-verification
|
|
304
|
+
metadata:
|
|
305
|
+
- name: endpoint
|
|
306
|
+
value: GET /api/v1/me/natural-person/id-verification
|
|
307
|
+
- name: requiredScope
|
|
308
|
+
value: agent:person.id_verification.read
|
|
309
|
+
- name: oauthScope
|
|
310
|
+
value: eprospera:person.id_verification.read
|
|
311
|
+
- name: credentialTypes
|
|
312
|
+
value: [ak, oauth]
|
|
313
|
+
- name: auth
|
|
314
|
+
description: Log in, inspect, and remove local credentials.
|
|
315
|
+
commands:
|
|
316
|
+
- name: login
|
|
317
|
+
description: Store an Agent Key or standard API key.
|
|
318
|
+
interactive: true
|
|
319
|
+
options:
|
|
320
|
+
- name: --agent-key
|
|
321
|
+
description: Prompt for an ak- Agent Key and validate it.
|
|
322
|
+
- name: --standard-key
|
|
323
|
+
description: Prompt for an sk- standard API key.
|
|
324
|
+
- name: --scopes
|
|
325
|
+
description: Comma-separated Agent Key scopes to cache.
|
|
326
|
+
arguments:
|
|
327
|
+
- name: csv
|
|
328
|
+
required: true
|
|
329
|
+
description: Comma-separated scope names.
|
|
330
|
+
examples:
|
|
331
|
+
- eprospera auth login --agent-key --scopes agent:person.details.read
|
|
332
|
+
metadata:
|
|
333
|
+
- name: credentialTypes
|
|
334
|
+
value: [ak, sk]
|
|
335
|
+
- name: whoami
|
|
336
|
+
description: Show the currently resolved credential kind and owner metadata.
|
|
337
|
+
examples:
|
|
338
|
+
- eprospera --json auth whoami
|
|
339
|
+
metadata:
|
|
340
|
+
- name: credentialTypes
|
|
341
|
+
value: [ak, sk, oauth]
|
|
342
|
+
- name: logout
|
|
343
|
+
description: Delete locally stored credentials.
|
|
344
|
+
interactive: true
|
|
345
|
+
examples:
|
|
346
|
+
- eprospera --yes auth logout
|
|
347
|
+
metadata:
|
|
348
|
+
- name: credentialTypes
|
|
349
|
+
value: [ak, sk, oauth]
|
|
350
|
+
- name: config
|
|
351
|
+
description: Read and write local CLI configuration.
|
|
352
|
+
commands:
|
|
353
|
+
- name: get
|
|
354
|
+
description: Read one configuration value.
|
|
355
|
+
arguments:
|
|
356
|
+
- name: key
|
|
357
|
+
required: true
|
|
358
|
+
description: Configuration key.
|
|
359
|
+
examples:
|
|
360
|
+
- eprospera --json config get api.baseUrl
|
|
361
|
+
- name: set
|
|
362
|
+
description: Set one configuration value.
|
|
363
|
+
arguments:
|
|
364
|
+
- name: key
|
|
365
|
+
required: true
|
|
366
|
+
description: Configuration key.
|
|
367
|
+
- name: value
|
|
368
|
+
required: true
|
|
369
|
+
description: Configuration value.
|
|
370
|
+
examples:
|
|
371
|
+
- eprospera config set api.baseUrl https://api.example.com
|
|
372
|
+
- name: list
|
|
373
|
+
description: List all local configuration values.
|
|
374
|
+
examples:
|
|
375
|
+
- eprospera --json config list
|
|
376
|
+
- name: unset
|
|
377
|
+
description: Remove one configuration value.
|
|
378
|
+
arguments:
|
|
379
|
+
- name: key
|
|
380
|
+
required: true
|
|
381
|
+
description: Configuration key.
|
|
382
|
+
examples:
|
|
383
|
+
- eprospera config unset api.baseUrl
|
|
384
|
+
- name: completion
|
|
385
|
+
description: Generate shell completion scripts.
|
|
386
|
+
commands:
|
|
387
|
+
- name: bash
|
|
388
|
+
description: Print Bash completion script.
|
|
389
|
+
examples:
|
|
390
|
+
- eprospera completion bash
|
|
391
|
+
- name: zsh
|
|
392
|
+
description: Print Zsh completion script.
|
|
393
|
+
examples:
|
|
394
|
+
- eprospera completion zsh
|
|
395
|
+
- name: fish
|
|
396
|
+
description: Print Fish completion script.
|
|
397
|
+
examples:
|
|
398
|
+
- eprospera completion fish
|
|
399
|
+
- name: powershell
|
|
400
|
+
description: Print PowerShell completion script.
|
|
401
|
+
examples:
|
|
402
|
+
- eprospera completion powershell
|
|
403
|
+
- name: schema
|
|
404
|
+
description: Print this OpenCLI document to stdout.
|
|
405
|
+
examples:
|
|
406
|
+
- eprospera schema
|