* Correction in abbreviation
* Minor correction in abbreviation
* Correcting abbreviation
* Correction in abbreviation
* Correcting abbreviation
* Correction in abbreviation
* Correction in abbreviation
* Correction in abbreviation
* Correction in abbreviation
* Correction in abbreviation
* Correction in abbreviation
* Correction in abbreviation
* Correction in abbreviation
* Correction in abbreviation
* Correction in abbreviation
* Update stack_guide_graphite.md
* Update whats-new-in-v4-6.md
* Correction in abbreviation
* Correction in abbreviation
* Correction in abbreviation
* Correction in abbreviation
* Correction in abbreviation
* Correction in abbreviation
* Correction in abbreviation
* Correction in abbreviation
* Update ldap.md
* Correction in abbreviation
* Correction in abbreviation
* Correction in abbreviation
* Correction in abbreviation
* Correction in abbreviation
* Update docs/sources/guides/whats-new-in-v5.md
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
* Allow API to assign new user to a specific organization
* Add defer block to test
* Add API tests and return 400 instead of 500 for bad orgId
* Minor test improvements
* Replace bash/json with http in http_api codeblocks
Since http is used elsewhere on the API docs and makes the
markdown rendering look different on the blocks that use bash/json
* Fix the annotations API link on 'Features'
- Noticed the Features/Dashboard Features/Annotations link pointing to
the HTTP API was linking itself instead of '../http_api/annotations.md'.
- Also add a link on Dashboard Export and Import to its HTTP API.
* Add missing links to features in API Index
Noticed there was 3 missing references in the API docs index.
- https://grafana.com/docs/grafana/latest/http_api/playlist
- https://grafana.com/docs/grafana/latest/http_api/datasource_permissions
- https://grafana.com/docs/grafana/latest/http_api/external_group_sync
Last two are Grafana Enterprise -only, so created a separate subsection
for them.
* Update plugin docs
* Updated plugins installation documentation
Moved all Grafana CLI commands into cli.md, moved API script into user.md, rewrote installation.md as an actual task that refers the user to the plugins installation page
* Update cli.md
* Update cli.md
* Update docs/sources/administration/cli.md
Co-Authored-By: Dan Cech <dcech@grafana.com>
* Update docs/sources/administration/cli.md
Co-Authored-By: Dan Cech <dcech@grafana.com>
* Update docs/sources/http_api/user.md
Co-Authored-By: Dan Cech <dcech@grafana.com>
* Update docs/sources/http_api/user.md
Co-Authored-By: Dan Cech <dcech@grafana.com>
* Update cli.md
* Fixed links
* Update cli.md
* Update cli.md
* Update cli.md
* Update cli.md
Co-authored-by: Dan Cech <dan@aussiedan.com>
Updates the docs to work with the website repo - mainly
relative link updates.
Adds a menu.yaml file to build the sidebar menu (no longer
using front matter weight).
* API: Add `createdAt` and `updatedAt` to api/users/lookup
In the past, we have added both `updatedAt` (#19004) and `createdAt` (#19475) to /api/users/:id
Turns out, api/users/lookup uses the same DTO for both. This fixes the serialization of both `createdAt` and `updatedAt`for this endpoint.
Also, adds a test to ensure no further regressions.
* Updated API documentation
* Update README.md
Capitalized the G and S in "Getting Started," and moved "guide" to match the section title in the docs.
* Fixed sentence structure. Changed "download" to "grafana.com/get" and changed "get" to "download".
* Docs: Replace "datasources" with "data sources" (#19111)
* Docs: Replace "datasources" with "data sources" (#19111)
* Docs: Replace "datasources" with "data sources" (#19111)
* Docs: Replace "datasources" with "data sources" (#19111)
* Docs: Replace "datasources" with "data sources" (#19111)
* Docs: Replace "datasources" with "data sources" (#19111)
* Docs: Replace "datasources" with "data sources" (#19111)
* Docs: Replace "datasources" with "data sources" (#19111)
* Docs: Replace "datasources" with "data sources" (#19111)
* Docs: Replace "datasources" with "data sources" (#19111)
* Docs: Replace "datasources" with "data sources" (#19111)
* Docs: Replace "datasources" with "data sources" (#19111)
* SQLite migrations
* cleanup
* migrate end times
* switch to update with a query
* real migration
* anno migrations
* remove old docs
* set isRegion from time changes
* use <> for is not
* add comment and fix index decleration
* single validation place
* add test
* fix test
* add upgrading docs
* use AnnotationEvent
* fix import
* remove regionId from typescript
Existing /api/alert-notifications now requires at least editor access.
Existing /api/alert-notifiers now requires at least editor access.
New /api/alert-notifications/lookup returns less information than
/api/alert-notifications and can be access by any authenticated user.
Existing /api/org/users now requires org admin role.
New /api/org/users/lookup returns less information than
/api/org/users and can be access by users that are org admins,
admin in any folder or admin of any team.
UserPicker component now uses /api/org/users/lookup instead
of /api/org/users.
Fixes#17318
* Modify backend to allow expiration of API Keys
* Add middleware test for expired api keys
* Modify frontend to enable expiration of API Keys
* Fix frontend tests
* Fix migration and add index for `expires` field
* Add api key tests for database access
* Substitude time.Now() by a mock for test usage
* Front-end modifications
* Change input label to `Time to live`
* Change input behavior to comply with the other similar
* Add tooltip
* Modify AddApiKey api call response
Expiration should be *time.Time instead of string
* Present expiration date in the selected timezone
* Use kbn for transforming intervals to seconds
* Use `assert` library for tests
* Frontend fixes
Add checks for empty/undefined/null values
* Change expires column from datetime to integer
* Restrict api key duration input
It should be interval not number
* AddApiKey must complain if SecondsToLive is negative
* Declare ErrInvalidApiKeyExpiration
* Move configuration to auth section
* Update docs
* Eliminate alias for models in modified files
* Omit expiration from api response if empty
* Eliminate Goconvey from test file
* Fix test
Do not sleep, use mocked timeNow() instead
* Remove index for expires from api_key table
The index should be anyway on both org_id and expires fields.
However this commit eliminates completely the index for now
since not many rows are expected to be in this table.
* Use getTimeZone function
* Minor change in api key listing
The frontend should display a message instead of empty string
if the key does not expire.
* Fix: Upgrade hugo wip
* Chore: Rename index to _index for latest hugo
* Chore: Use relative refs, no starting slash
* Feat: Add possibility to mount layouts from grafana.org project
* Feature: Parse user agent string in user auth token api response (#16222)
* Adding UA Parser Go modules attempt (#16222)
* Bring user agent vals up per req
* fix tests
* doc update
* update to flatten, no maps
* update doc
* Add api to reaload provisioning
* Refactor and simplify the polling code
* Add test for the provisioning service
* Fix provider initialization and move some code to file reader
* Simplify the code and move initialization
* Remove unused code
* Update comment
* Add comment
* Change error messages
* Add DashboardProvisionerFactory type
* Update imports
* Use new assert lib
* Use mutext for synchronizing the reloading
* Fix typo
Co-Authored-By: aocenas <mr.ocenas@gmail.com>
* Add docs about the new api
* Search: Fixes search limits and adds a page parameter
This adds a page parameter to search api without adding
any major breaking change.
It does at an api validation error when trying to use
a limit beyond 5000. This is a breaking change. We could
remove this and have it only in the docs and describe that this
is a limit that grafana will apply silently.
Fixes#16049
* Fix: Corrected wrong array slice change
* Docs: minor docs fix
* Search: fixed folder tests
* Fixed: Moved limit to correct inner query
* Search: moving limit check and page check
* Search: limit in handler is no longer needed
Now returns uid in response to get notification channel by id.
Adds GET/PUT/DELETE support for notification channel by uid,
/api/alert-notifications/uid/:uid.
Break apart alerting and alert notification http api docs in two
pages and update documentation to make it up to date
with current implementation.
Fixes#16012
Added new PATCH verb annotation endpoint
Removed unwanted fmt
Added test cases for PATCH verb annotation endpoint
Fixed formatting issue
Check arr len before proceeding
Updated doc to include PATCH verb annotation endpt