Commit graph

480 commits

Author SHA1 Message Date
Alexander Strizhakov
10f82c88b8 mastoapi password reset
added rate limit to password reset

configure rate limit in runtime
2019-07-16 21:44:50 +00:00
Roman Chvanikov
c729883936 Merge branch 'develop' into feature/digest-email 2019-07-14 21:43:30 +03:00
Maxim Filippov
418ae6638d Merge branch 'develop' into feature/admin-api-user-statuses 2019-07-14 00:39:06 +03:00
Maxim Filippov
a9459ff98f Admin API: Endpoint for fetching latest user's statuses 2019-07-14 00:37:26 +03:00
rinpatch
095117a58c Merge branch 'develop' into fix/ap-hide-follows 2019-07-12 21:43:06 +03:00
rinpatch
97b79efbcd ActivityPub Controller: Actually pass for_user to following/followers
views and give 403 errors when trying to request hidden follower pages
when unauthenticated
2019-07-12 20:54:20 +03:00
Mark Felder
360e4cdaa2 Move these to pleroma namespace in Mastodon API 2019-07-12 11:25:58 -05:00
Roman Chvanikov
371d39e160 Merge develop 2019-07-09 21:21:09 +03:00
kaniini
1417627d07 Merge branch 'remove-avatar-header' into 'develop'
Ability to reset avatar, profile banner and backgroud

See merge request pleroma/pleroma!1187
2019-07-09 17:51:41 +00:00
rinpatch
9e58d3c624 FallbackRedirector: Do not crash on Metadata rendering errors 2019-07-08 12:59:49 +03:00
Roman Chvanikov
657277ffc0 Resolve conflicts 2019-06-29 00:52:50 +03:00
Egor Kislitsyn
74132e3715 Enable IdempotencyPlug for the all API 2019-06-26 18:42:49 +07:00
Maksim
a0c4ebb4d7 [#184] small refactoring reset password 2019-06-24 19:01:56 +00:00
Sachin Joshi
a0c65bbd6c Merge branch 'develop' into 'remove-avatar-header'
# Conflicts:
#   CHANGELOG.md
2019-06-23 03:25:50 +00:00
Mark Felder
9b908697dd OEmbed.OEmbedController does not exist in the Pleroma codebase. It was removed in commit 92c5640f
and this leftover artifact breaks compiling now.
2019-06-15 07:04:01 -05:00
Alexander Strizhakov
c2ca1f22a2 it is changed in compile time
we can't change module attributes and endpoint settings in runtime
2019-06-14 15:45:05 +00:00
Maksim
ee4ed87fb4 [#948] /api/v1/account_search added optional parameters (limit, offset, following) 2019-06-14 11:39:57 +00:00
rinpatch
92213fb87c Replace Mix.env with Pleroma.Config.get(:env)
Mix.env/0 is not availible in release environments such as distillery or
elixir's built-in releases.
2019-06-06 23:59:51 +03:00
Mark Felder
6ef145b4fc Merge branch 'develop' into feature/digest-email 2019-06-03 15:29:53 -05:00
rinpatch
026b245dbc Merge branch 'develop' into feature/polls-2-electric-boogalo 2019-06-03 11:14:52 +03:00
rinpatch
65db5e9f52 Resolve merge conflicts 2019-06-01 16:29:58 +03:00
rinpatch
300d94c628 Add poll votes
Also in this commit by accident:
- Fix query ordering causing exclude_poll_votes to not work
- Do not create notifications for Answer objects
2019-06-01 16:17:46 +03:00
Sachin Joshi
ad5263c647 Merge remote-tracking branch 'upstream/develop' into admin-create-users 2019-06-01 11:42:37 +05:45
Haelwenn (lanodan) Monnier
5d3ece2861
Remove now useless flavours switching 2019-06-01 01:44:10 +02:00
kaniini
6aec0d1b58 Revert "Merge branch 'feature/search-authenticated-only' into 'develop'"
This reverts merge request !1209
2019-05-29 22:10:16 +00:00
Roman Chvanikov
ce47017c89 Merge develop 2019-05-29 18:18:22 +03:00
William Pitcock
0159a6dbe9 router: require oauth_read for searching
Search calls are generally expensive and allow unauthenticated users to
crawl the instance for user profiles or posts which contain specified
keywords.  An adversary can build a distributed search engine which not
only will consume significant instance resources, but also can be used
for undesirable purposes such as datamining.

Accordingly, require authenticated access to use the search API endpoints.
This acts as a nice balance as it allows guest users to make use of most
functionality available in Pleroma FE while ensuring that Pleroma
instances are reasonably protected from resource exhaustion.  It also
removes Pleroma as a potential vector in distributed search engines.
2019-05-29 10:58:45 +00:00
Sachin Joshi
1452a96ad6 ability to set and reset avatar, profile banner and backgroud in Mastodon API 2019-05-27 15:31:01 +05:45
kaniini
79c2cef2fb Merge branch 'mongooseim-support' into 'develop'
MongooseIM: Add basic integration endpoints.

See merge request pleroma/pleroma!1172
2019-05-22 04:06:54 +00:00
Aaron Tinio
3ab9255eda Respond with a 404 Not implemented JSON error message
when requested API is not implemented
2019-05-22 07:15:52 +08:00
rinpatch
63b0b7190c MastoAPI: Add GET /api/v1/polls/:id 2019-05-21 20:40:35 +03:00
Sadposter
54e9cb5c2d
Add API endpoints for a custom user mascot 2019-05-20 12:39:23 +01:00
lain
f959bf7aa6 MongooseIM: Add basic integration endpoints. 2019-05-17 18:21:11 +02:00
Sachin Joshi
5c028b8f92 user creation admin api will create multiple users 2019-05-17 12:21:58 +05:45
Sergey Suprunenko
e2b3a27204 Add Reports to Admin API 2019-05-16 19:09:18 +00:00
Aaron Tinio
70c81b95d0 Pipe requests to public endpoints through EnsurePublicOrAuthenticatedPlug 2019-05-15 05:09:32 +08:00
Egor Kislitsyn
5e2b491276 Merge remote-tracking branch 'pleroma/develop' into feature/disable-account 2019-05-14 18:15:56 +07:00
Alexander Strizhakov
a2be420f94 differences_in_mastoapi_responses.md: fullname & bio are optionnal
[ci skip]
2019-05-13 18:35:45 +00:00
Sachin Joshi
f01f995816 make url uniform in admin api 2019-05-11 14:46:00 +05:45
Roman Chvanikov
b6b5b16ba4 Merge develop 2019-05-08 17:08:06 +07:00
lain
45f790becc Merge remote-tracking branch 'origin/develop' into conversations_three 2019-05-01 18:40:41 +02:00
Roman Chvanikov
0f0cc2703b Merge develop 2019-04-30 20:17:52 +07:00
Egor Kislitsyn
c157e27a00 Merge branch 'develop' into feature/disable-account 2019-04-25 13:41:10 +07:00
Sergey Suprunenko
9dd36e5bcb Extend Mastodon API with public endpoint for getting Favorites timeline of any user (#789) 2019-04-23 02:47:43 +00:00
Alexander Strizhakov
88f0be9693 Feature/826 healthcheck endpoint 2019-04-22 07:19:53 +00:00
Egor Kislitsyn
e8c2f9a73a Merge remote-tracking branch 'pleroma/develop' into feature/disable-account 2019-04-22 13:08:30 +07:00
Roman Chvanikov
64a2c6a041 Digest emails 2019-04-20 19:42:19 +07:00
Mark Felder
1aa4994f6d Do not require authentication for user search in MastoAPI 2019-04-18 12:44:25 -05:00
Alexander Strizhakov
711ade961e adding destroy multiple for mastofe 2019-04-12 02:28:46 +00:00
Egor Kislitsyn
db4badc6aa move user disable into deactivation 2019-04-11 17:22:42 +07:00
Egor Kislitsyn
0f2f7d2cec Merge remote-tracking branch 'pleroma/develop' into feature/disable-account 2019-04-11 15:51:52 +07:00
lain
c352a0aba6 Conversations: Make tests run. 2019-04-10 17:48:31 +02:00
lambda
e5d553aa45 Merge branch 'feature/767-multiple-use-invite-token' into 'develop'
Feature/767 multiple use invite token

See merge request pleroma/pleroma!1032
2019-04-10 10:10:08 +00:00
Sadposter
be8350baa2
Merge branch 'develop' into feature/user-status-subscriptions 2019-04-10 10:44:54 +01:00
kaniini
97395e013e Merge branch 'notification-pleroma-settings' into 'develop'
Notification controls

Closes #738

See merge request pleroma/pleroma!988
2019-04-10 02:10:31 +00:00
lain
a9f805c871 Merge remote-tracking branch 'origin/develop' into features/mastoapi/2.6.0-conversations 2019-04-08 14:10:51 +02:00
Ivan Tashkinov
bffddf5e31 [#923] Merge remote-tracking branch 'remotes/upstream/develop' into twitter_oauth
# Conflicts:
#	docs/config.md
#	test/support/factory.ex
2019-04-08 12:20:26 +03:00
Alex S
b810aac117 added docs to docs/api/admin_api.md
code style and little renamings
2019-04-07 19:48:52 +07:00
eugenijm
7bf622ce73 Add scheduled activities 2019-04-06 23:55:58 +03:00
Alex S
dcc54f8cfa admin api endpoints for invites 2019-04-06 20:25:19 +07:00
Roger Braun
7895ee37fa Add user following / unfollowing to the admin api. 2019-04-05 11:27:07 -05:00
Sadposter
9ca91cbb87 Change relationship direction of subscriptions 2019-04-05 17:02:07 +01:00
Sadposter
d35f6551c1 Move subscriptions endpoint to be under /pleroma 2019-04-05 17:02:02 +01:00
Sadposter
79910ce5cc Add API endpoints and user column for subscription 2019-04-05 15:30:18 +01:00
Ivan Tashkinov
37925cbe78 Merge remote-tracking branch 'remotes/upstream/develop' into twitter_oauth
# Conflicts:
#	lib/pleroma/web/oauth/oauth_controller.ex
#	lib/pleroma/web/router.ex
2019-04-02 14:05:34 +03:00
lambda
091baf9316 Merge branch 'features/mastoapi/2.6.0-force-login-option' into 'develop'
MastoAPI 2.6.0 `force_login` option

Closes #734

See merge request pleroma/pleroma!999
2019-04-02 10:57:38 +00:00
Ivan Tashkinov
590c935d95 [#923] Merge remote-tracking branch 'remotes/upstream/develop' into twitter_oauth
# Conflicts:
#	mix.exs
2019-04-02 13:50:12 +03:00
Ivan Tashkinov
aac48d0cc6 Merge remote-tracking branch 'remotes/upstream/develop' into features/mastoapi/2.6.0-conversations 2019-04-02 09:19:10 +03:00
Haelwenn (lanodan) Monnier
f56eef8d8c
router: Add fake identity proof endpoint 2019-04-02 01:53:38 +02:00
Ivan Tashkinov
cbe09d94d1 Added force_login authentication option (previously applied by default). 2019-04-01 14:46:50 +03:00
Ivan Tashkinov
baffdcc480 [#923] Merge remote-tracking branch 'remotes/upstream/develop' into twitter_oauth
# Conflicts:
#	mix.exs
2019-04-01 08:49:32 +03:00
eugenijm
cd90695a34 Add PUT /api/pleroma/notification_settings endpoint 2019-03-28 18:55:16 +03:00
eugenijm
10c81fc902 Add user show endpoint for Pleroma admin API 2019-03-27 21:44:15 +03:00
Ivan Tashkinov
2a95014b9d [#923] OAuth consumer improvements, fixes, refactoring. 2019-03-27 15:39:35 +03:00
eugenijm
691d1208b5 Add GET /api/v1/apps/verify_credentials 2019-03-26 21:53:28 +03:00
Ivan Tashkinov
e17a9a1f66 [#923] Nickname & email selection for external registrations, option to connect to existing account. 2019-03-20 10:35:31 +03:00
Ivan Tashkinov
2a96283efb [#923] Merge remote-tracking branch 'remotes/upstream/develop' into twitter_oauth
# Conflicts:
#	config/config.exs
#	lib/pleroma/web/auth/pleroma_authenticator.ex
2019-03-18 10:26:41 +03:00
Haelwenn (lanodan) Monnier
f6fab01ba7
Web.Router: Add routes for Conversation mastoAPI 2019-03-17 17:06:28 +01:00
eugenijm
43fb03be5a Allow to mark a single notification as read 2019-03-15 23:56:14 +03:00
Ivan Tashkinov
2739057442 Merge remote-tracking branch 'remotes/upstream/develop' into twitter_oauth 2019-03-15 17:11:00 +03:00
Haelwenn (lanodan) Monnier
a3a9cec483
[Credo] fix Credo.Check.Readability.AliasOrder 2019-03-13 04:26:54 +01:00
Ivan Tashkinov
63ab61ed3f Sign in via Twitter (WIP). 2019-03-11 20:37:26 +03:00
kaniini
0fe715f3ba Merge branch 'chore/merge-search-into-list-users' into 'develop'
Merge search endpoint into /users

See merge request pleroma/pleroma!898
2019-03-06 22:27:42 +00:00
Maksim
bc7570c282 [#647] tests for web push 2019-03-06 13:20:12 +00:00
Maxim Filippov
f620199836 Merge search endpoint into /users 2019-03-04 21:26:32 +03:00
Egor Kislitsyn
eb84de0143 allow users to disable their own account 2019-03-04 19:55:11 +07:00
Maxim Filippov
46f29b9da1 Add search users endpoint 2019-02-28 19:04:47 +03:00
Maxim Filippov
90d0d055fc Add more admin actions 2019-02-27 00:13:38 +03:00
kaniini
5a4e2905fe Merge branch 'fix/twittercards' into 'develop'
Fix Twitter Cards

See merge request pleroma/pleroma!815
2019-02-22 04:38:14 +00:00
William Pitcock
1803d9a022 fix fetching AP objects with application/json 2019-02-20 20:45:40 +00:00
Egor
bff9eb5ef7 Reports 2019-02-20 16:51:25 +00:00
Ivan Tashkinov
b574d97c2e [#468] Added support for push OAuth scope (Mastodon 2.4+). 2019-02-20 17:27:41 +03:00
Ivan Tashkinov
6fe7acd58e [#468] Merged upstream/develop. 2019-02-20 16:48:59 +03:00
lambda
11b3c10c54 Merge branch 'muting' into 'develop'
Implement muting, add it to the whole mastodon API

See merge request pleroma/pleroma!319
2019-02-20 13:19:37 +00:00
Ivan Tashkinov
3ad91ec3c1 [#468] Adjusted scope restriction for MastodonAPIController#index. 2019-02-20 14:05:02 +03:00
Ekaterina Vaartis
da64ea4a55 Implement mastodon mutes endpoint
Aparently i forgot to add it, it gets a list of muted users
2019-02-19 21:49:55 +03:00
Ekaterina Vaartis
f41f017bbc Implement muting, add it to the mastodon API 2019-02-19 21:49:55 +03:00
Mark Felder
2d21ea1a0e Merge branch 'develop' into fix/twittercards 2019-02-19 16:58:28 +00:00
href
10a11f083c
Embed player suitable for Twitter Cards 2019-02-19 17:47:48 +01:00
eugenijm
25b9e7a8c3 Added admin API for changing user activation status 2019-02-19 19:37:02 +03:00
Ivan Tashkinov
c0ecbf6669 [#468] Merged upstream/develop. 2019-02-19 19:10:55 +03:00
kaniini
7456338ed3 Merge branch 'feature/add-oauth-tokens-endpoint' into 'develop'
Add OAuth tokens endpoint

See merge request pleroma/pleroma!805
2019-02-18 04:02:41 +00:00
Ivan Tashkinov
d3fe2c8ec6 [#468] Formatting fix. 2019-02-17 14:07:35 +03:00
Ivan Tashkinov
bc4f77b10b [#468] Merged upstream/develop, resolved conflicts. 2019-02-17 14:07:04 +03:00
Haelwenn (lanodan) Monnier
4df455f69b
[MastoAPI] Add switching of frontend flavours 2019-02-16 19:50:13 +01:00
Ivan Tashkinov
2a4a4f3342 [#468] Defined OAuth restrictions for all applicable routes.
Improved missing "scopes" param handling.
Allowed "any of" / "all of" mode specification in OAuthScopesPlug.
Fixed auth UI / behavior when user selects no permissions at /oauth/authorize.
2019-02-15 19:54:37 +03:00
William Pitcock
9bd6ed975e activitypub: user view: use route helpers instead of hardcoded URIs 2019-02-13 19:34:43 +00:00
Maxim Filippov
62a45bdc11 Add revoke token 2019-02-13 12:59:56 +03:00
Maxim Filippov
61a4bc5095 Add OAuth tokens endpoint 2019-02-13 12:59:56 +03:00
Ivan Tashkinov
a337bd114c [#468] MastodonAPI scope restrictions. Removed obsolete "POST /web/login" route. 2019-02-09 17:32:33 +03:00
Ivan Tashkinov
4ad843fb9d [#468] Prototype of OAuth2 scopes support. TwitterAPI scope restrictions. 2019-02-09 17:09:08 +03:00
98ec578f4d Merge branch 'develop' into feature/thread-muting 2019-02-08 12:44:02 +01:00
f4ff4ffba2 Migration and some boilerplate stuff 2019-02-07 17:36:14 +01:00
William Pitcock
db1165f70f activitypub: c2s: add /api/ap/whoami endpoint for andstatus 2019-02-04 22:58:29 +00:00
Haelwenn
00d4333373 Merge branch 'features/glitch-soc-frontend' into 'develop'
Features/glitch soc frontend

See merge request pleroma/pleroma!192
2019-01-31 10:16:11 +00:00
kaniini
d03a116654 Merge branch 'hj-happiness-improvement' into 'develop'
New frontend configuration mechanism.

Closes #445

See merge request pleroma/pleroma!700
2019-01-29 13:54:10 +00:00
William Pitcock
6096846f5f API: kill /api/rich_media/parse endpoint 2019-01-28 05:53:17 +00:00
Haelwenn (lanodan) Monnier
cda1470e02
[MastoAPI][GlitchAPI] Add bookmarks 2019-01-28 04:47:32 +01:00
href
71bb90073b
/notice/:id - send the FE index even if 404
this allows to open private activities by URL when you are logged in,
and to let the FE display a 404 page
2019-01-27 22:51:50 +01:00
Haelwenn (lanodan) Monnier
3f64379b13 Web.MastodonAPI.MastodonAPIController: Add Rich-Media support 2019-01-26 14:18:23 +00:00
kaniini
c9b418e547 Merge branch 'develop' into 'oembed_provider'
# Conflicts:
#   lib/pleroma/activity.ex
2019-01-25 05:00:47 +00:00
lain
e221c681dc New frontend configuration mechanism. 2019-01-23 12:40:57 +01:00
href
f9a3269099
Uploader callback controller 2019-01-21 22:44:14 +01:00
rinpatch
74346a7035 Fix merge conflict 2019-01-18 18:31:25 +03:00
rinpatch
ff01fd3c4f Remove caching because it does not affect performance and may be even worse in some cases 2019-01-16 11:18:25 +03:00
rinpatch
70b2bb6ede add caching 2019-01-16 10:26:01 +03:00
rinpatch
8745c8c990 remove useless newlines after every tag. Make domain.com/username provide opengraph too 2019-01-15 18:34:47 +03:00
rinpatch
ce15e0659e Fix some edge cases [nervous laughter] 2019-01-15 11:56:35 +03:00
rinpatch
e4dc3f71ae Resolve merge conflict 2019-01-13 13:38:28 +03:00
sxsdv1
581edd5a91 Add route to get object like activities 2019-01-12 20:24:38 +01:00
Egor Kislitsyn
44a1e69484 Add Twitter API for the pinned statuses
```
# Only return statuses that have been pinned
GET /api/statuses/user_timeline.json?pinned=true

# Pin
POST /api/statuses/pin/:id

# Unpin
POST /api/statuses/unpin/:id
```
2019-01-09 19:54:19 +07:00
Egor Kislitsyn
380e9fba21 add pinned posts 2019-01-07 20:45:33 +07:00
Maxim Filippov
48e81d3d40 Add RichMediaController and tests 2019-01-02 17:02:50 +03:00
William Pitcock
980b5288ed update copyright years to 2019 2018-12-31 15:41:47 +00:00
sxsdv1
aa082ca7b6 Wire up stub routes for client calls of activitypub inbox/outbox
Code style: remove wrapping function of outbox
2018-12-29 22:22:03 +01:00
Ivan Tashkinov
700661b761 [#483] Blocked users list import (TwitterAPI). 2018-12-28 23:01:03 +03:00
Ivan Tashkinov
6e9a15b181 [#483] Blocked users export for TwitterAPI. 2018-12-28 21:08:07 +03:00
William Pitcock
2791ce9a1f add license boilerplate to pleroma core 2018-12-23 20:56:42 +00:00
kaniini
2e2030ada8 Merge branch '114_email_confirmation' into 'develop'
[#114] Email confirmation

See merge request pleroma/pleroma!546
2018-12-20 13:28:36 +00:00
Ivan Tashkinov
f69cbf4755 [#114] Added :user_id component to email confirmation path to improve the security.
Added tests for `confirm_email` action.
2018-12-20 13:41:30 +03:00
raeno
652f49d176 Remove extra bracket 2018-12-19 23:06:10 +04:00
raeno
7fb3780431 Merge branch 'develop' into oembed_provider 2018-12-19 22:39:44 +04:00
lain
f3eb414e28 Add a way to use the admin api without a user. 2018-12-18 21:08:52 +01:00
Ivan Tashkinov
b096e30cff [#114] Added email confirmation resend action. Added tests
for registration, authentication, email confirmation, confirmation resending.
Made admin methods create confirmed users.
2018-12-18 17:22:46 +03:00
Ivan Tashkinov
1de0aa2f10 [#114] Account confirmation email, registration as unconfirmed (config-based), auth prevention for unconfirmed. 2018-12-18 17:21:05 +03:00
Ivan Tashkinov
a05cb10a95 [#114] Email confirmation route, action, node setting, User.Info fields. 2018-12-18 17:18:53 +03:00
raeno
a300336459 Merge branch 'develop' into oembed_provider 2018-12-18 14:59:32 +01:00
href
b1860fe85a
Instance/Static runtime plug
This allows to set-up an arbitrary directory which overrides most of the
static files: index.html static/ emoji/ packs/ sounds/ images/ instance/
favicon.png.

If the files are not present in the directory, the bundled ones in
priv/static will be used.
2018-12-17 22:50:59 +01:00
Ekaterina Vaartis
a2399c1c7c Add base CAPTCHA support (currently only kocaptcha) 2018-12-15 03:12:44 +03:00
raeno
90b00701ff Merge branch 'develop' into oembed_provider 2018-12-14 20:28:35 +01:00