mirror of
https://github.com/argoproj/argo-cd
synced 2026-05-24 09:50:08 +00:00
* fix(api): return 404 when the app is not found if a project is specified (#13393) Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com> simplify, respond 404 on project specified but doesn't match, always fetch app Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com> handle project updates Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com> * handle new endpoint, fix bad merge Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com> * docs Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com> --------- Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
33 lines
1.4 KiB
Markdown
33 lines
1.4 KiB
Markdown
# API Docs
|
|
|
|
You can find the Swagger docs by setting the path to `/swagger-ui` in your Argo CD UI. E.g. [http://localhost:8080/swagger-ui](http://localhost:8080/swagger-ui).
|
|
|
|
## Authorization
|
|
|
|
You'll need to authorize your API using a bearer token. To get a token:
|
|
|
|
```bash
|
|
$ curl $ARGOCD_SERVER/api/v1/session -d $'{"username":"admin","password":"password"}'
|
|
{"token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE1Njc4MTIzODcsImlzcyI6ImFyZ29jZCIsIm5iZiI6MTU2NzgxMjM4Nywic3ViIjoiYWRtaW4ifQ.ejyTgFxLhuY9mOBtKhcnvobg3QZXJ4_RusN_KIdVwao"}
|
|
```
|
|
|
|
Then pass using the HTTP `Authorization` header, prefixing with `Bearer `:
|
|
|
|
```bash
|
|
$ curl $ARGOCD_SERVER/api/v1/applications -H "Authorization: Bearer $ARGOCD_TOKEN"
|
|
{"metadata":{"selfLink":"/apis/argoproj.io/v1alpha1/namespaces/argocd/applications","resourceVersion":"37755"},"items":...}
|
|
```
|
|
|
|
## Services
|
|
|
|
### Applications API
|
|
|
|
#### How to Avoid 403 Errors for Missing Applications
|
|
|
|
All endpoints of the Applications API accept an optional `project` query string parameter. If the parameter is
|
|
specified, and the specified Application does not exist, or if the Application does exist but is not in the given
|
|
project, the API will return a `404` error.
|
|
|
|
If the `project` query string parameter is specified, and the Application does not exist, the API will return a `403`
|
|
error. This is to prevent leaking information about the existence of Applications to users who do not have access to
|
|
them.
|