GET https://kbin.spritesserver.nl/u/@ChrisFhey@kbin.social/boosts

Security

Token

There is no security token.

Firewall

main Name
Security enabled
Stateless

Configuration

Key Value
provider security.user.provider.concrete.app_user_provider
context main
entry_point App\Security\KbinAuthenticator
user_checker App\Security\UserChecker
access_denied_handler (none)
access_denied_url (none)
authenticators
[
  "two_factor"
  "remember_me"
  "App\Security\KbinAuthenticator"
  "App\Security\FacebookAuthenticator"
  "App\Security\GoogleAuthenticator"
  "App\Security\GithubAuthenticator"
  "App\Security\KeycloakAuthenticator"
]

Listeners

Listener Duration Response
Symfony\Component\Security\Http\Firewall\ChannelListener {#723
  -map: Symfony\Component\Security\Http\AccessMap {#722 …}
  -logger: Monolog\Logger {#783 …}
  -httpPort: 80
  -httpsPort: 443
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\ContextListener {#706
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorage {#1017 …}
  -sessionKey: "_security_main"
  -logger: Monolog\Logger {#783 …}
  -userProviders: Symfony\Component\DependencyInjection\Argument\RewindableGenerator {#705 …}
  -dispatcher: Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher {#747 …}
  -registered: false
  -trustResolver: Scheb\TwoFactorBundle\Security\Authentication\AuthenticationTrustResolver {#780 …}
  -sessionTrackerEnabler: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage::enableUsageTracking(): void {#703 …}
}
0.26 ms (none)
Symfony\Component\Security\Http\Firewall\AuthenticatorManagerListener {#584
  -authenticatorManager: Symfony\Component\Security\Http\Authentication\AuthenticatorManager {#595 …}
}
0.00 ms (none)
Scheb\TwoFactorBundle\Security\Http\Firewall\TwoFactorAccessListener {#582
  -twoFactorFirewallConfig: Scheb\TwoFactorBundle\Security\TwoFactor\TwoFactorFirewallConfig {#842 …}
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -twoFactorAccessDecider: Scheb\TwoFactorBundle\Security\Authorization\TwoFactorAccessDecider {#581 …}
}
0.04 ms (none)
Symfony\Component\Security\Http\Firewall\AccessListener {#579
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -accessDecisionManager: Symfony\Component\Security\Core\Authorization\TraceableAccessDecisionManager {#937 …}
  -map: Symfony\Component\Security\Http\AccessMap {#722 …}
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\LogoutListener {#786
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -options: [
    "csrf_parameter" => "_csrf_token"
    "csrf_token_id" => "logout"
    "logout_path" => "app_logout"
  ]
  -httpUtils: Symfony\Component\Security\Http\HttpUtils {#841 …}
  -csrfTokenManager: Symfony\Component\Security\Csrf\CsrfTokenManager {#1015 …}
  -eventDispatcher: Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher {#747 …}
}
0.00 ms (none)

Authenticators

No authenticators have been recorded. Check previous profiles on your authentication endpoint.

Access Decision

affirmative Strategy
# Voter class
1
"Symfony\Component\Security\Core\Authorization\Voter\AuthenticatedVoter"
2
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
3
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
4
"Symfony\Component\Security\Core\Authorization\Voter\ExpressionVoter"
5
"App\Security\Voter\EntryCommentVoter"
6
"App\Security\Voter\EntryVoter"
7
"App\Security\Voter\MagazineVoter"
8
"App\Security\Voter\MessageThreadVoter"
9
"App\Security\Voter\MessageVoter"
10
"App\Security\Voter\NotificationVoter"
11
"App\Security\Voter\OAuth2UserConsentVoter"
12
"App\Security\Voter\PostCommentVoter"
13
"App\Security\Voter\PostVoter"
14
"App\Security\Voter\UserVoter"

Access decision log

# Result Attributes Object
1 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
2 DENIED moderate
Proxies\__CG__\App\Entity\Entry {#1609
  +user: Proxies\__CG__\App\Entity\User {#2857 …}
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1700 …}
  +image: Proxies\__CG__\App\Entity\Image {#2864 …}
  +domain: Proxies\__CG__\App\Entity\Domain {#2890 …}
  +slug: "This-is-the-Reddit-app-They-are-making-it-really"
  +title: "This is the Reddit app. They are making it really easy to want to migrate"
  +url: "https://lemmy.world/pictrs/image/eee3fb3c-45b6-4994-881f-99b50e3180ed.png"
  +body: "cross-posted from: [lemmy.world/post/1032247](https://lemmy.world/post/1032247)"
  +type: "image"
  +lang: "en"
  +isOc: false
  +hasEmbed: true
  +commentCount: 43
  +favouriteCount: 104
  +score: 22
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1688809906 {#2856
    date: 2023-07-08 11:51:46.0 +02:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#2889 …}
  +votes: Doctrine\ORM\PersistentCollection {#2887 …}
  +reports: Doctrine\ORM\PersistentCollection {#2884 …}
  +favourites: Doctrine\ORM\PersistentCollection {#2918 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2914 …}
  +badges: Doctrine\ORM\PersistentCollection {#2931 …}
  +children: [
    App\Entity\EntryComment {#1774
      +user: Proxies\__CG__\App\Entity\User {#1589 …}
      +entry: Proxies\__CG__\App\Entity\Entry {#1609 …2}
      +magazine: Proxies\__CG__\App\Entity\Magazine {#1700 …}
      +image: null
      +parent: null
      +root: null
      +body: """
        The really *really* sad thing is, Reddit could have done a half decent job and made a fair bit of money, but they decided on stupidity instead.\n
        \n
        Sure, it would have upset some people a bit, but... Not by anywhere *close* to the same degree.\n
        \n
        > Alright, we're sorry, but use of the API is going to have to start costing money for some kinds of uses.\n
        \n
        > First off, people that just want to scrape everything get the following access, and a much higher rate limit, but it's going to cost $x.\n
        \n
        > Moderator tools will always be free, but the API will require that the tool be associated with a moderator, and it will only permit access to subs that the user is a moderator for.\n
        \n
        > Community bots will generally be free, subject to the following restrictions.\n
        \n
        > And 3rd party clients will be charged a minimal amount, calculated to be roughly equal to what we are making from similar users on the official clients, to make up for lost ad revenue. Alternate options involving profit sharing may be viable, contact X for details.\n
        \n
        > By accepting the API agreement, you agree that use of the wrong class of API usage (for example, using the community bot or 3rd party client classes for data scraping) will be billed, retroactively, at $X * 10.\n
        \n
        There. That's really not that hard. And people would have been *much* less upset at that, at least as long as the fees were *actually* as described, and not based on, say, how much they would *like* to make per user.\n
        \n
        You'd probably want a free tier for 3rd party clients for users of specific account types. If the user is paying for Reddit Premium, maybe 3rd party clients don't get charged for API usage for that user account. Or if the user is a moderator for a given subreddit, API usage for that user on that subreddit is also free. With an API that the client can use to check the status of such things. If they were *smart*, they would also have a process for users with disabilities to have their accounts exempted from fees. That last one is hard, because you need a verification process, but it would get them a *lot* of good will.\n
        \n
        Again... This *shouldn't be hard*. And it would have turned into a viable revenue stream!\n
        \n
        Hell, flatly disclose that the 3rd party cost is 30% *more* than the average cost of using the standard client, to support the effort required to maintain the API. (Largely bullshit, but it makes those users *more* valuable than those that use the official client, while not being expensive enough to make it impossible for anyone to offer a 3rd party client at an even remotely sane cost.)\n
        \n
        Yes, this would have very sadly been the end of free 3rd party clients... But I for one would have been... Okay with paying a small amount per month/year through the app store for a client that didn't suck.\n
        \n
        Instead, Reddit decided that committing suicide was the better path forward.
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 25
      +score: 0
      +lastActive: DateTime @1688797655 {#1453
        date: 2023-07-08 08:27:35.0 +02:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@RealNooshie@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#1693 …}
      +nested: Doctrine\ORM\PersistentCollection {#1695 …}
      +votes: Doctrine\ORM\PersistentCollection {#1698 …}
      +reports: Doctrine\ORM\PersistentCollection {#1709 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1429 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1672 …}
      -id: 8850
      -bodyTs: "'10':221 '30':408 '3rd':140,208,272,290,404,458,478 'accept':186 'access':80,118 'account':279,303,358 'actual':247 'ad':171 'agre':191 'agreement':189 'alright':46 'also':324,347 'altern':173 'alway':97 'amount':148,493 'anyon':454 'anywher':40 'api':54,102,188,199,298,315,328,427 'app':498 'associ':109 'averag':412 'base':252 'better':515 'bill':217 'bit':19,36 'bot':129,206 'bullshit':429 'calcul':149 'charg':145,296 'check':335 'class':197,211 'client':142,165,210,274,292,331,418,443,460,480,502 'close':41 'commit':511 'communiti':128,205 'contact':181 'cost':61,92,406,413,466 'could':8 'd':265 'data':213 'decent':13 'decid':24,509 'degre':45 'describ':249 'detail':184 'didn':504 'disabl':354 'disclos':401 'done':10 'effort':422 'end':475 'enough':448 'equal':153 'even':463 'everyth':76 'exampl':202 'exempt':359 'expens':447 'fair':18 'fee':245,361 'first':68 'flat':400 'follow':79,137 'forward':517 'free':99,133,269,325,477 'general':131 'get':77,295,376 'given':313 'go':56,90 'good':381 'half':12 'hard':228,366,388 'hell':399 'higher':84 'imposs':452 'instead':27,507 'involv':175 'job':14 'kind':65 'larg':428 'last':363 'least':240 'less':235 'like':259 'limit':86 'long':242 'lost':170 'lot':379 'made':16 'maintain':425 'make':158,167,261,432,450 'may':178 'mayb':289 'minim':147 'moder':94,112,126,310 'money':21,62 'month/year':495 'much':83,234,256 'need':369 'offer':456 'offici':164,442 'okay':488 'one':364,484 'option':174 'parti':141,209,273,291,405,459,479 'path':516 'pay':285,490 'peopl':34,70,230 'per':262,494 'permit':117 'premium':288 'probabl':266 'process':350,372 'profit':176 'rate':85 're':48 'realli':2,3,225 'reddit':7,287,508 'remot':464 'requir':104,423 'restrict':138 'retroact':218 'revenu':172,397 'rough':152 'sad':4,472 'sane':465 'say':254 'scrape':75,214 'share':177 'shouldn':385 'similar':160 'small':492 'smart':344 'sorri':49 'specif':278 'standard':417 'start':60 'status':337 'store':499 'stream':398 'stupid':26 'sub':120 'subject':134 'subreddit':314,322 'suck':506 'suicid':512 'support':420 'sure':28 'thing':5,340 'tier':270 'tool':95,107 'turn':393 'type':280 'upset':32,236 'usag':200,299,316 'use':51,67,193,203,333,415,440 'user':123,161,263,276,283,302,307,319,352,434 'valuabl':436 'verif':371 'viabl':180,396 'want':73,267 'would':30,231,258,346,375,391,469,485 'wrong':196 'x':93,182,220 'yes':467"
      +ranking: 0
      +commentCount: 0
      +upVotes: 6
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://kbin.social/m/RedditMigration/t/149498/-/comment/583444"
      +editedAt: null
      +createdAt: DateTimeImmutable @1688704849 {#1464
        date: 2023-07-07 06:40:49.0 +02:00
      }
    }
  ]
  -id: 909
  -titleTs: "'app':5 'easi':11 'make':8 'migrat':15 'realli':10 'reddit':4 'want':13"
  -bodyTs: "'/post/1032247](https://lemmy.world/post/1032247)':7 'cross':2 'cross-post':1 'lemmy.world':6 'lemmy.world/post/1032247](https://lemmy.world/post/1032247)':5 'post':3"
  +cross: false
  +upVotes: 22
  +downVotes: 0
  +ranking: 1688777360
  +visibility: "visible             "
  +apId: "https://lemmy.world/post/1118892"
  +editedAt: null
  +createdAt: DateTimeImmutable @1688690960 {#2855
    date: 2023-07-07 02:49:20.0 +02:00
  }
  +__isInitialized__: true
   …2
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
3 DENIED edit
Proxies\__CG__\App\Entity\Entry {#1609
  +user: Proxies\__CG__\App\Entity\User {#2857 …}
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1700 …}
  +image: Proxies\__CG__\App\Entity\Image {#2864 …}
  +domain: Proxies\__CG__\App\Entity\Domain {#2890 …}
  +slug: "This-is-the-Reddit-app-They-are-making-it-really"
  +title: "This is the Reddit app. They are making it really easy to want to migrate"
  +url: "https://lemmy.world/pictrs/image/eee3fb3c-45b6-4994-881f-99b50e3180ed.png"
  +body: "cross-posted from: [lemmy.world/post/1032247](https://lemmy.world/post/1032247)"
  +type: "image"
  +lang: "en"
  +isOc: false
  +hasEmbed: true
  +commentCount: 43
  +favouriteCount: 104
  +score: 22
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1688809906 {#2856
    date: 2023-07-08 11:51:46.0 +02:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#2889 …}
  +votes: Doctrine\ORM\PersistentCollection {#2887 …}
  +reports: Doctrine\ORM\PersistentCollection {#2884 …}
  +favourites: Doctrine\ORM\PersistentCollection {#2918 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2914 …}
  +badges: Doctrine\ORM\PersistentCollection {#2931 …}
  +children: [
    App\Entity\EntryComment {#1774
      +user: Proxies\__CG__\App\Entity\User {#1589 …}
      +entry: Proxies\__CG__\App\Entity\Entry {#1609 …2}
      +magazine: Proxies\__CG__\App\Entity\Magazine {#1700 …}
      +image: null
      +parent: null
      +root: null
      +body: """
        The really *really* sad thing is, Reddit could have done a half decent job and made a fair bit of money, but they decided on stupidity instead.\n
        \n
        Sure, it would have upset some people a bit, but... Not by anywhere *close* to the same degree.\n
        \n
        > Alright, we're sorry, but use of the API is going to have to start costing money for some kinds of uses.\n
        \n
        > First off, people that just want to scrape everything get the following access, and a much higher rate limit, but it's going to cost $x.\n
        \n
        > Moderator tools will always be free, but the API will require that the tool be associated with a moderator, and it will only permit access to subs that the user is a moderator for.\n
        \n
        > Community bots will generally be free, subject to the following restrictions.\n
        \n
        > And 3rd party clients will be charged a minimal amount, calculated to be roughly equal to what we are making from similar users on the official clients, to make up for lost ad revenue. Alternate options involving profit sharing may be viable, contact X for details.\n
        \n
        > By accepting the API agreement, you agree that use of the wrong class of API usage (for example, using the community bot or 3rd party client classes for data scraping) will be billed, retroactively, at $X * 10.\n
        \n
        There. That's really not that hard. And people would have been *much* less upset at that, at least as long as the fees were *actually* as described, and not based on, say, how much they would *like* to make per user.\n
        \n
        You'd probably want a free tier for 3rd party clients for users of specific account types. If the user is paying for Reddit Premium, maybe 3rd party clients don't get charged for API usage for that user account. Or if the user is a moderator for a given subreddit, API usage for that user on that subreddit is also free. With an API that the client can use to check the status of such things. If they were *smart*, they would also have a process for users with disabilities to have their accounts exempted from fees. That last one is hard, because you need a verification process, but it would get them a *lot* of good will.\n
        \n
        Again... This *shouldn't be hard*. And it would have turned into a viable revenue stream!\n
        \n
        Hell, flatly disclose that the 3rd party cost is 30% *more* than the average cost of using the standard client, to support the effort required to maintain the API. (Largely bullshit, but it makes those users *more* valuable than those that use the official client, while not being expensive enough to make it impossible for anyone to offer a 3rd party client at an even remotely sane cost.)\n
        \n
        Yes, this would have very sadly been the end of free 3rd party clients... But I for one would have been... Okay with paying a small amount per month/year through the app store for a client that didn't suck.\n
        \n
        Instead, Reddit decided that committing suicide was the better path forward.
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 25
      +score: 0
      +lastActive: DateTime @1688797655 {#1453
        date: 2023-07-08 08:27:35.0 +02:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@RealNooshie@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#1693 …}
      +nested: Doctrine\ORM\PersistentCollection {#1695 …}
      +votes: Doctrine\ORM\PersistentCollection {#1698 …}
      +reports: Doctrine\ORM\PersistentCollection {#1709 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1429 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1672 …}
      -id: 8850
      -bodyTs: "'10':221 '30':408 '3rd':140,208,272,290,404,458,478 'accept':186 'access':80,118 'account':279,303,358 'actual':247 'ad':171 'agre':191 'agreement':189 'alright':46 'also':324,347 'altern':173 'alway':97 'amount':148,493 'anyon':454 'anywher':40 'api':54,102,188,199,298,315,328,427 'app':498 'associ':109 'averag':412 'base':252 'better':515 'bill':217 'bit':19,36 'bot':129,206 'bullshit':429 'calcul':149 'charg':145,296 'check':335 'class':197,211 'client':142,165,210,274,292,331,418,443,460,480,502 'close':41 'commit':511 'communiti':128,205 'contact':181 'cost':61,92,406,413,466 'could':8 'd':265 'data':213 'decent':13 'decid':24,509 'degre':45 'describ':249 'detail':184 'didn':504 'disabl':354 'disclos':401 'done':10 'effort':422 'end':475 'enough':448 'equal':153 'even':463 'everyth':76 'exampl':202 'exempt':359 'expens':447 'fair':18 'fee':245,361 'first':68 'flat':400 'follow':79,137 'forward':517 'free':99,133,269,325,477 'general':131 'get':77,295,376 'given':313 'go':56,90 'good':381 'half':12 'hard':228,366,388 'hell':399 'higher':84 'imposs':452 'instead':27,507 'involv':175 'job':14 'kind':65 'larg':428 'last':363 'least':240 'less':235 'like':259 'limit':86 'long':242 'lost':170 'lot':379 'made':16 'maintain':425 'make':158,167,261,432,450 'may':178 'mayb':289 'minim':147 'moder':94,112,126,310 'money':21,62 'month/year':495 'much':83,234,256 'need':369 'offer':456 'offici':164,442 'okay':488 'one':364,484 'option':174 'parti':141,209,273,291,405,459,479 'path':516 'pay':285,490 'peopl':34,70,230 'per':262,494 'permit':117 'premium':288 'probabl':266 'process':350,372 'profit':176 'rate':85 're':48 'realli':2,3,225 'reddit':7,287,508 'remot':464 'requir':104,423 'restrict':138 'retroact':218 'revenu':172,397 'rough':152 'sad':4,472 'sane':465 'say':254 'scrape':75,214 'share':177 'shouldn':385 'similar':160 'small':492 'smart':344 'sorri':49 'specif':278 'standard':417 'start':60 'status':337 'store':499 'stream':398 'stupid':26 'sub':120 'subject':134 'subreddit':314,322 'suck':506 'suicid':512 'support':420 'sure':28 'thing':5,340 'tier':270 'tool':95,107 'turn':393 'type':280 'upset':32,236 'usag':200,299,316 'use':51,67,193,203,333,415,440 'user':123,161,263,276,283,302,307,319,352,434 'valuabl':436 'verif':371 'viabl':180,396 'want':73,267 'would':30,231,258,346,375,391,469,485 'wrong':196 'x':93,182,220 'yes':467"
      +ranking: 0
      +commentCount: 0
      +upVotes: 6
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://kbin.social/m/RedditMigration/t/149498/-/comment/583444"
      +editedAt: null
      +createdAt: DateTimeImmutable @1688704849 {#1464
        date: 2023-07-07 06:40:49.0 +02:00
      }
    }
  ]
  -id: 909
  -titleTs: "'app':5 'easi':11 'make':8 'migrat':15 'realli':10 'reddit':4 'want':13"
  -bodyTs: "'/post/1032247](https://lemmy.world/post/1032247)':7 'cross':2 'cross-post':1 'lemmy.world':6 'lemmy.world/post/1032247](https://lemmy.world/post/1032247)':5 'post':3"
  +cross: false
  +upVotes: 22
  +downVotes: 0
  +ranking: 1688777360
  +visibility: "visible             "
  +apId: "https://lemmy.world/post/1118892"
  +editedAt: null
  +createdAt: DateTimeImmutable @1688690960 {#2855
    date: 2023-07-07 02:49:20.0 +02:00
  }
  +__isInitialized__: true
   …2
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
4 DENIED moderate
Proxies\__CG__\App\Entity\Entry {#1609
  +user: Proxies\__CG__\App\Entity\User {#2857 …}
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1700 …}
  +image: Proxies\__CG__\App\Entity\Image {#2864 …}
  +domain: Proxies\__CG__\App\Entity\Domain {#2890 …}
  +slug: "This-is-the-Reddit-app-They-are-making-it-really"
  +title: "This is the Reddit app. They are making it really easy to want to migrate"
  +url: "https://lemmy.world/pictrs/image/eee3fb3c-45b6-4994-881f-99b50e3180ed.png"
  +body: "cross-posted from: [lemmy.world/post/1032247](https://lemmy.world/post/1032247)"
  +type: "image"
  +lang: "en"
  +isOc: false
  +hasEmbed: true
  +commentCount: 43
  +favouriteCount: 104
  +score: 22
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1688809906 {#2856
    date: 2023-07-08 11:51:46.0 +02:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#2889 …}
  +votes: Doctrine\ORM\PersistentCollection {#2887 …}
  +reports: Doctrine\ORM\PersistentCollection {#2884 …}
  +favourites: Doctrine\ORM\PersistentCollection {#2918 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2914 …}
  +badges: Doctrine\ORM\PersistentCollection {#2931 …}
  +children: [
    App\Entity\EntryComment {#1774
      +user: Proxies\__CG__\App\Entity\User {#1589 …}
      +entry: Proxies\__CG__\App\Entity\Entry {#1609 …2}
      +magazine: Proxies\__CG__\App\Entity\Magazine {#1700 …}
      +image: null
      +parent: null
      +root: null
      +body: """
        The really *really* sad thing is, Reddit could have done a half decent job and made a fair bit of money, but they decided on stupidity instead.\n
        \n
        Sure, it would have upset some people a bit, but... Not by anywhere *close* to the same degree.\n
        \n
        > Alright, we're sorry, but use of the API is going to have to start costing money for some kinds of uses.\n
        \n
        > First off, people that just want to scrape everything get the following access, and a much higher rate limit, but it's going to cost $x.\n
        \n
        > Moderator tools will always be free, but the API will require that the tool be associated with a moderator, and it will only permit access to subs that the user is a moderator for.\n
        \n
        > Community bots will generally be free, subject to the following restrictions.\n
        \n
        > And 3rd party clients will be charged a minimal amount, calculated to be roughly equal to what we are making from similar users on the official clients, to make up for lost ad revenue. Alternate options involving profit sharing may be viable, contact X for details.\n
        \n
        > By accepting the API agreement, you agree that use of the wrong class of API usage (for example, using the community bot or 3rd party client classes for data scraping) will be billed, retroactively, at $X * 10.\n
        \n
        There. That's really not that hard. And people would have been *much* less upset at that, at least as long as the fees were *actually* as described, and not based on, say, how much they would *like* to make per user.\n
        \n
        You'd probably want a free tier for 3rd party clients for users of specific account types. If the user is paying for Reddit Premium, maybe 3rd party clients don't get charged for API usage for that user account. Or if the user is a moderator for a given subreddit, API usage for that user on that subreddit is also free. With an API that the client can use to check the status of such things. If they were *smart*, they would also have a process for users with disabilities to have their accounts exempted from fees. That last one is hard, because you need a verification process, but it would get them a *lot* of good will.\n
        \n
        Again... This *shouldn't be hard*. And it would have turned into a viable revenue stream!\n
        \n
        Hell, flatly disclose that the 3rd party cost is 30% *more* than the average cost of using the standard client, to support the effort required to maintain the API. (Largely bullshit, but it makes those users *more* valuable than those that use the official client, while not being expensive enough to make it impossible for anyone to offer a 3rd party client at an even remotely sane cost.)\n
        \n
        Yes, this would have very sadly been the end of free 3rd party clients... But I for one would have been... Okay with paying a small amount per month/year through the app store for a client that didn't suck.\n
        \n
        Instead, Reddit decided that committing suicide was the better path forward.
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 25
      +score: 0
      +lastActive: DateTime @1688797655 {#1453
        date: 2023-07-08 08:27:35.0 +02:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@RealNooshie@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#1693 …}
      +nested: Doctrine\ORM\PersistentCollection {#1695 …}
      +votes: Doctrine\ORM\PersistentCollection {#1698 …}
      +reports: Doctrine\ORM\PersistentCollection {#1709 …}
      +favourites: Doctrine\ORM\PersistentCollection {#1429 …}
      +notifications: Doctrine\ORM\PersistentCollection {#1672 …}
      -id: 8850
      -bodyTs: "'10':221 '30':408 '3rd':140,208,272,290,404,458,478 'accept':186 'access':80,118 'account':279,303,358 'actual':247 'ad':171 'agre':191 'agreement':189 'alright':46 'also':324,347 'altern':173 'alway':97 'amount':148,493 'anyon':454 'anywher':40 'api':54,102,188,199,298,315,328,427 'app':498 'associ':109 'averag':412 'base':252 'better':515 'bill':217 'bit':19,36 'bot':129,206 'bullshit':429 'calcul':149 'charg':145,296 'check':335 'class':197,211 'client':142,165,210,274,292,331,418,443,460,480,502 'close':41 'commit':511 'communiti':128,205 'contact':181 'cost':61,92,406,413,466 'could':8 'd':265 'data':213 'decent':13 'decid':24,509 'degre':45 'describ':249 'detail':184 'didn':504 'disabl':354 'disclos':401 'done':10 'effort':422 'end':475 'enough':448 'equal':153 'even':463 'everyth':76 'exampl':202 'exempt':359 'expens':447 'fair':18 'fee':245,361 'first':68 'flat':400 'follow':79,137 'forward':517 'free':99,133,269,325,477 'general':131 'get':77,295,376 'given':313 'go':56,90 'good':381 'half':12 'hard':228,366,388 'hell':399 'higher':84 'imposs':452 'instead':27,507 'involv':175 'job':14 'kind':65 'larg':428 'last':363 'least':240 'less':235 'like':259 'limit':86 'long':242 'lost':170 'lot':379 'made':16 'maintain':425 'make':158,167,261,432,450 'may':178 'mayb':289 'minim':147 'moder':94,112,126,310 'money':21,62 'month/year':495 'much':83,234,256 'need':369 'offer':456 'offici':164,442 'okay':488 'one':364,484 'option':174 'parti':141,209,273,291,405,459,479 'path':516 'pay':285,490 'peopl':34,70,230 'per':262,494 'permit':117 'premium':288 'probabl':266 'process':350,372 'profit':176 'rate':85 're':48 'realli':2,3,225 'reddit':7,287,508 'remot':464 'requir':104,423 'restrict':138 'retroact':218 'revenu':172,397 'rough':152 'sad':4,472 'sane':465 'say':254 'scrape':75,214 'share':177 'shouldn':385 'similar':160 'small':492 'smart':344 'sorri':49 'specif':278 'standard':417 'start':60 'status':337 'store':499 'stream':398 'stupid':26 'sub':120 'subject':134 'subreddit':314,322 'suck':506 'suicid':512 'support':420 'sure':28 'thing':5,340 'tier':270 'tool':95,107 'turn':393 'type':280 'upset':32,236 'usag':200,299,316 'use':51,67,193,203,333,415,440 'user':123,161,263,276,283,302,307,319,352,434 'valuabl':436 'verif':371 'viabl':180,396 'want':73,267 'would':30,231,258,346,375,391,469,485 'wrong':196 'x':93,182,220 'yes':467"
      +ranking: 0
      +commentCount: 0
      +upVotes: 6
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://kbin.social/m/RedditMigration/t/149498/-/comment/583444"
      +editedAt: null
      +createdAt: DateTimeImmutable @1688704849 {#1464
        date: 2023-07-07 06:40:49.0 +02:00
      }
    }
  ]
  -id: 909
  -titleTs: "'app':5 'easi':11 'make':8 'migrat':15 'realli':10 'reddit':4 'want':13"
  -bodyTs: "'/post/1032247](https://lemmy.world/post/1032247)':7 'cross':2 'cross-post':1 'lemmy.world':6 'lemmy.world/post/1032247](https://lemmy.world/post/1032247)':5 'post':3"
  +cross: false
  +upVotes: 22
  +downVotes: 0
  +ranking: 1688777360
  +visibility: "visible             "
  +apId: "https://lemmy.world/post/1118892"
  +editedAt: null
  +createdAt: DateTimeImmutable @1688690960 {#2855
    date: 2023-07-07 02:49:20.0 +02:00
  }
  +__isInitialized__: true
   …2
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
5 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
6 DENIED moderate
App\Entity\EntryComment {#1774
  +user: Proxies\__CG__\App\Entity\User {#1589 …}
  +entry: Proxies\__CG__\App\Entity\Entry {#1609
    +user: Proxies\__CG__\App\Entity\User {#2857 …}
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1700 …}
    +image: Proxies\__CG__\App\Entity\Image {#2864 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#2890 …}
    +slug: "This-is-the-Reddit-app-They-are-making-it-really"
    +title: "This is the Reddit app. They are making it really easy to want to migrate"
    +url: "https://lemmy.world/pictrs/image/eee3fb3c-45b6-4994-881f-99b50e3180ed.png"
    +body: "cross-posted from: [lemmy.world/post/1032247](https://lemmy.world/post/1032247)"
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 43
    +favouriteCount: 104
    +score: 22
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1688809906 {#2856
      date: 2023-07-08 11:51:46.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#2889 …}
    +votes: Doctrine\ORM\PersistentCollection {#2887 …}
    +reports: Doctrine\ORM\PersistentCollection {#2884 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2918 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2914 …}
    +badges: Doctrine\ORM\PersistentCollection {#2931 …}
    +children: [
      App\Entity\EntryComment {#1774}
    ]
    -id: 909
    -titleTs: "'app':5 'easi':11 'make':8 'migrat':15 'realli':10 'reddit':4 'want':13"
    -bodyTs: "'/post/1032247](https://lemmy.world/post/1032247)':7 'cross':2 'cross-post':1 'lemmy.world':6 'lemmy.world/post/1032247](https://lemmy.world/post/1032247)':5 'post':3"
    +cross: false
    +upVotes: 22
    +downVotes: 0
    +ranking: 1688777360
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/1118892"
    +editedAt: null
    +createdAt: DateTimeImmutable @1688690960 {#2855
      date: 2023-07-07 02:49:20.0 +02:00
    }
    +__isInitialized__: true
     …2
  }
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1700 …}
  +image: null
  +parent: null
  +root: null
  +body: """
    The really *really* sad thing is, Reddit could have done a half decent job and made a fair bit of money, but they decided on stupidity instead.\n
    \n
    Sure, it would have upset some people a bit, but... Not by anywhere *close* to the same degree.\n
    \n
    > Alright, we're sorry, but use of the API is going to have to start costing money for some kinds of uses.\n
    \n
    > First off, people that just want to scrape everything get the following access, and a much higher rate limit, but it's going to cost $x.\n
    \n
    > Moderator tools will always be free, but the API will require that the tool be associated with a moderator, and it will only permit access to subs that the user is a moderator for.\n
    \n
    > Community bots will generally be free, subject to the following restrictions.\n
    \n
    > And 3rd party clients will be charged a minimal amount, calculated to be roughly equal to what we are making from similar users on the official clients, to make up for lost ad revenue. Alternate options involving profit sharing may be viable, contact X for details.\n
    \n
    > By accepting the API agreement, you agree that use of the wrong class of API usage (for example, using the community bot or 3rd party client classes for data scraping) will be billed, retroactively, at $X * 10.\n
    \n
    There. That's really not that hard. And people would have been *much* less upset at that, at least as long as the fees were *actually* as described, and not based on, say, how much they would *like* to make per user.\n
    \n
    You'd probably want a free tier for 3rd party clients for users of specific account types. If the user is paying for Reddit Premium, maybe 3rd party clients don't get charged for API usage for that user account. Or if the user is a moderator for a given subreddit, API usage for that user on that subreddit is also free. With an API that the client can use to check the status of such things. If they were *smart*, they would also have a process for users with disabilities to have their accounts exempted from fees. That last one is hard, because you need a verification process, but it would get them a *lot* of good will.\n
    \n
    Again... This *shouldn't be hard*. And it would have turned into a viable revenue stream!\n
    \n
    Hell, flatly disclose that the 3rd party cost is 30% *more* than the average cost of using the standard client, to support the effort required to maintain the API. (Largely bullshit, but it makes those users *more* valuable than those that use the official client, while not being expensive enough to make it impossible for anyone to offer a 3rd party client at an even remotely sane cost.)\n
    \n
    Yes, this would have very sadly been the end of free 3rd party clients... But I for one would have been... Okay with paying a small amount per month/year through the app store for a client that didn't suck.\n
    \n
    Instead, Reddit decided that committing suicide was the better path forward.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 25
  +score: 0
  +lastActive: DateTime @1688797655 {#1453
    date: 2023-07-08 08:27:35.0 +02:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@RealNooshie@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1693 …}
  +nested: Doctrine\ORM\PersistentCollection {#1695 …}
  +votes: Doctrine\ORM\PersistentCollection {#1698 …}
  +reports: Doctrine\ORM\PersistentCollection {#1709 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1429 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1672 …}
  -id: 8850
  -bodyTs: "'10':221 '30':408 '3rd':140,208,272,290,404,458,478 'accept':186 'access':80,118 'account':279,303,358 'actual':247 'ad':171 'agre':191 'agreement':189 'alright':46 'also':324,347 'altern':173 'alway':97 'amount':148,493 'anyon':454 'anywher':40 'api':54,102,188,199,298,315,328,427 'app':498 'associ':109 'averag':412 'base':252 'better':515 'bill':217 'bit':19,36 'bot':129,206 'bullshit':429 'calcul':149 'charg':145,296 'check':335 'class':197,211 'client':142,165,210,274,292,331,418,443,460,480,502 'close':41 'commit':511 'communiti':128,205 'contact':181 'cost':61,92,406,413,466 'could':8 'd':265 'data':213 'decent':13 'decid':24,509 'degre':45 'describ':249 'detail':184 'didn':504 'disabl':354 'disclos':401 'done':10 'effort':422 'end':475 'enough':448 'equal':153 'even':463 'everyth':76 'exampl':202 'exempt':359 'expens':447 'fair':18 'fee':245,361 'first':68 'flat':400 'follow':79,137 'forward':517 'free':99,133,269,325,477 'general':131 'get':77,295,376 'given':313 'go':56,90 'good':381 'half':12 'hard':228,366,388 'hell':399 'higher':84 'imposs':452 'instead':27,507 'involv':175 'job':14 'kind':65 'larg':428 'last':363 'least':240 'less':235 'like':259 'limit':86 'long':242 'lost':170 'lot':379 'made':16 'maintain':425 'make':158,167,261,432,450 'may':178 'mayb':289 'minim':147 'moder':94,112,126,310 'money':21,62 'month/year':495 'much':83,234,256 'need':369 'offer':456 'offici':164,442 'okay':488 'one':364,484 'option':174 'parti':141,209,273,291,405,459,479 'path':516 'pay':285,490 'peopl':34,70,230 'per':262,494 'permit':117 'premium':288 'probabl':266 'process':350,372 'profit':176 'rate':85 're':48 'realli':2,3,225 'reddit':7,287,508 'remot':464 'requir':104,423 'restrict':138 'retroact':218 'revenu':172,397 'rough':152 'sad':4,472 'sane':465 'say':254 'scrape':75,214 'share':177 'shouldn':385 'similar':160 'small':492 'smart':344 'sorri':49 'specif':278 'standard':417 'start':60 'status':337 'store':499 'stream':398 'stupid':26 'sub':120 'subject':134 'subreddit':314,322 'suck':506 'suicid':512 'support':420 'sure':28 'thing':5,340 'tier':270 'tool':95,107 'turn':393 'type':280 'upset':32,236 'usag':200,299,316 'use':51,67,193,203,333,415,440 'user':123,161,263,276,283,302,307,319,352,434 'valuabl':436 'verif':371 'viabl':180,396 'want':73,267 'would':30,231,258,346,375,391,469,485 'wrong':196 'x':93,182,220 'yes':467"
  +ranking: 0
  +commentCount: 0
  +upVotes: 6
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://kbin.social/m/RedditMigration/t/149498/-/comment/583444"
  +editedAt: null
  +createdAt: DateTimeImmutable @1688704849 {#1464
    date: 2023-07-07 06:40:49.0 +02:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
7 DENIED edit
App\Entity\EntryComment {#1774
  +user: Proxies\__CG__\App\Entity\User {#1589 …}
  +entry: Proxies\__CG__\App\Entity\Entry {#1609
    +user: Proxies\__CG__\App\Entity\User {#2857 …}
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1700 …}
    +image: Proxies\__CG__\App\Entity\Image {#2864 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#2890 …}
    +slug: "This-is-the-Reddit-app-They-are-making-it-really"
    +title: "This is the Reddit app. They are making it really easy to want to migrate"
    +url: "https://lemmy.world/pictrs/image/eee3fb3c-45b6-4994-881f-99b50e3180ed.png"
    +body: "cross-posted from: [lemmy.world/post/1032247](https://lemmy.world/post/1032247)"
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 43
    +favouriteCount: 104
    +score: 22
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1688809906 {#2856
      date: 2023-07-08 11:51:46.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#2889 …}
    +votes: Doctrine\ORM\PersistentCollection {#2887 …}
    +reports: Doctrine\ORM\PersistentCollection {#2884 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2918 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2914 …}
    +badges: Doctrine\ORM\PersistentCollection {#2931 …}
    +children: [
      App\Entity\EntryComment {#1774}
    ]
    -id: 909
    -titleTs: "'app':5 'easi':11 'make':8 'migrat':15 'realli':10 'reddit':4 'want':13"
    -bodyTs: "'/post/1032247](https://lemmy.world/post/1032247)':7 'cross':2 'cross-post':1 'lemmy.world':6 'lemmy.world/post/1032247](https://lemmy.world/post/1032247)':5 'post':3"
    +cross: false
    +upVotes: 22
    +downVotes: 0
    +ranking: 1688777360
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/1118892"
    +editedAt: null
    +createdAt: DateTimeImmutable @1688690960 {#2855
      date: 2023-07-07 02:49:20.0 +02:00
    }
    +__isInitialized__: true
     …2
  }
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1700 …}
  +image: null
  +parent: null
  +root: null
  +body: """
    The really *really* sad thing is, Reddit could have done a half decent job and made a fair bit of money, but they decided on stupidity instead.\n
    \n
    Sure, it would have upset some people a bit, but... Not by anywhere *close* to the same degree.\n
    \n
    > Alright, we're sorry, but use of the API is going to have to start costing money for some kinds of uses.\n
    \n
    > First off, people that just want to scrape everything get the following access, and a much higher rate limit, but it's going to cost $x.\n
    \n
    > Moderator tools will always be free, but the API will require that the tool be associated with a moderator, and it will only permit access to subs that the user is a moderator for.\n
    \n
    > Community bots will generally be free, subject to the following restrictions.\n
    \n
    > And 3rd party clients will be charged a minimal amount, calculated to be roughly equal to what we are making from similar users on the official clients, to make up for lost ad revenue. Alternate options involving profit sharing may be viable, contact X for details.\n
    \n
    > By accepting the API agreement, you agree that use of the wrong class of API usage (for example, using the community bot or 3rd party client classes for data scraping) will be billed, retroactively, at $X * 10.\n
    \n
    There. That's really not that hard. And people would have been *much* less upset at that, at least as long as the fees were *actually* as described, and not based on, say, how much they would *like* to make per user.\n
    \n
    You'd probably want a free tier for 3rd party clients for users of specific account types. If the user is paying for Reddit Premium, maybe 3rd party clients don't get charged for API usage for that user account. Or if the user is a moderator for a given subreddit, API usage for that user on that subreddit is also free. With an API that the client can use to check the status of such things. If they were *smart*, they would also have a process for users with disabilities to have their accounts exempted from fees. That last one is hard, because you need a verification process, but it would get them a *lot* of good will.\n
    \n
    Again... This *shouldn't be hard*. And it would have turned into a viable revenue stream!\n
    \n
    Hell, flatly disclose that the 3rd party cost is 30% *more* than the average cost of using the standard client, to support the effort required to maintain the API. (Largely bullshit, but it makes those users *more* valuable than those that use the official client, while not being expensive enough to make it impossible for anyone to offer a 3rd party client at an even remotely sane cost.)\n
    \n
    Yes, this would have very sadly been the end of free 3rd party clients... But I for one would have been... Okay with paying a small amount per month/year through the app store for a client that didn't suck.\n
    \n
    Instead, Reddit decided that committing suicide was the better path forward.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 25
  +score: 0
  +lastActive: DateTime @1688797655 {#1453
    date: 2023-07-08 08:27:35.0 +02:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@RealNooshie@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1693 …}
  +nested: Doctrine\ORM\PersistentCollection {#1695 …}
  +votes: Doctrine\ORM\PersistentCollection {#1698 …}
  +reports: Doctrine\ORM\PersistentCollection {#1709 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1429 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1672 …}
  -id: 8850
  -bodyTs: "'10':221 '30':408 '3rd':140,208,272,290,404,458,478 'accept':186 'access':80,118 'account':279,303,358 'actual':247 'ad':171 'agre':191 'agreement':189 'alright':46 'also':324,347 'altern':173 'alway':97 'amount':148,493 'anyon':454 'anywher':40 'api':54,102,188,199,298,315,328,427 'app':498 'associ':109 'averag':412 'base':252 'better':515 'bill':217 'bit':19,36 'bot':129,206 'bullshit':429 'calcul':149 'charg':145,296 'check':335 'class':197,211 'client':142,165,210,274,292,331,418,443,460,480,502 'close':41 'commit':511 'communiti':128,205 'contact':181 'cost':61,92,406,413,466 'could':8 'd':265 'data':213 'decent':13 'decid':24,509 'degre':45 'describ':249 'detail':184 'didn':504 'disabl':354 'disclos':401 'done':10 'effort':422 'end':475 'enough':448 'equal':153 'even':463 'everyth':76 'exampl':202 'exempt':359 'expens':447 'fair':18 'fee':245,361 'first':68 'flat':400 'follow':79,137 'forward':517 'free':99,133,269,325,477 'general':131 'get':77,295,376 'given':313 'go':56,90 'good':381 'half':12 'hard':228,366,388 'hell':399 'higher':84 'imposs':452 'instead':27,507 'involv':175 'job':14 'kind':65 'larg':428 'last':363 'least':240 'less':235 'like':259 'limit':86 'long':242 'lost':170 'lot':379 'made':16 'maintain':425 'make':158,167,261,432,450 'may':178 'mayb':289 'minim':147 'moder':94,112,126,310 'money':21,62 'month/year':495 'much':83,234,256 'need':369 'offer':456 'offici':164,442 'okay':488 'one':364,484 'option':174 'parti':141,209,273,291,405,459,479 'path':516 'pay':285,490 'peopl':34,70,230 'per':262,494 'permit':117 'premium':288 'probabl':266 'process':350,372 'profit':176 'rate':85 're':48 'realli':2,3,225 'reddit':7,287,508 'remot':464 'requir':104,423 'restrict':138 'retroact':218 'revenu':172,397 'rough':152 'sad':4,472 'sane':465 'say':254 'scrape':75,214 'share':177 'shouldn':385 'similar':160 'small':492 'smart':344 'sorri':49 'specif':278 'standard':417 'start':60 'status':337 'store':499 'stream':398 'stupid':26 'sub':120 'subject':134 'subreddit':314,322 'suck':506 'suicid':512 'support':420 'sure':28 'thing':5,340 'tier':270 'tool':95,107 'turn':393 'type':280 'upset':32,236 'usag':200,299,316 'use':51,67,193,203,333,415,440 'user':123,161,263,276,283,302,307,319,352,434 'valuabl':436 'verif':371 'viabl':180,396 'want':73,267 'would':30,231,258,346,375,391,469,485 'wrong':196 'x':93,182,220 'yes':467"
  +ranking: 0
  +commentCount: 0
  +upVotes: 6
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://kbin.social/m/RedditMigration/t/149498/-/comment/583444"
  +editedAt: null
  +createdAt: DateTimeImmutable @1688704849 {#1464
    date: 2023-07-07 06:40:49.0 +02:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
8 DENIED moderate
App\Entity\EntryComment {#1774
  +user: Proxies\__CG__\App\Entity\User {#1589 …}
  +entry: Proxies\__CG__\App\Entity\Entry {#1609
    +user: Proxies\__CG__\App\Entity\User {#2857 …}
    +magazine: Proxies\__CG__\App\Entity\Magazine {#1700 …}
    +image: Proxies\__CG__\App\Entity\Image {#2864 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#2890 …}
    +slug: "This-is-the-Reddit-app-They-are-making-it-really"
    +title: "This is the Reddit app. They are making it really easy to want to migrate"
    +url: "https://lemmy.world/pictrs/image/eee3fb3c-45b6-4994-881f-99b50e3180ed.png"
    +body: "cross-posted from: [lemmy.world/post/1032247](https://lemmy.world/post/1032247)"
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 43
    +favouriteCount: 104
    +score: 22
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1688809906 {#2856
      date: 2023-07-08 11:51:46.0 +02:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#2889 …}
    +votes: Doctrine\ORM\PersistentCollection {#2887 …}
    +reports: Doctrine\ORM\PersistentCollection {#2884 …}
    +favourites: Doctrine\ORM\PersistentCollection {#2918 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2914 …}
    +badges: Doctrine\ORM\PersistentCollection {#2931 …}
    +children: [
      App\Entity\EntryComment {#1774}
    ]
    -id: 909
    -titleTs: "'app':5 'easi':11 'make':8 'migrat':15 'realli':10 'reddit':4 'want':13"
    -bodyTs: "'/post/1032247](https://lemmy.world/post/1032247)':7 'cross':2 'cross-post':1 'lemmy.world':6 'lemmy.world/post/1032247](https://lemmy.world/post/1032247)':5 'post':3"
    +cross: false
    +upVotes: 22
    +downVotes: 0
    +ranking: 1688777360
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/1118892"
    +editedAt: null
    +createdAt: DateTimeImmutable @1688690960 {#2855
      date: 2023-07-07 02:49:20.0 +02:00
    }
    +__isInitialized__: true
     …2
  }
  +magazine: Proxies\__CG__\App\Entity\Magazine {#1700 …}
  +image: null
  +parent: null
  +root: null
  +body: """
    The really *really* sad thing is, Reddit could have done a half decent job and made a fair bit of money, but they decided on stupidity instead.\n
    \n
    Sure, it would have upset some people a bit, but... Not by anywhere *close* to the same degree.\n
    \n
    > Alright, we're sorry, but use of the API is going to have to start costing money for some kinds of uses.\n
    \n
    > First off, people that just want to scrape everything get the following access, and a much higher rate limit, but it's going to cost $x.\n
    \n
    > Moderator tools will always be free, but the API will require that the tool be associated with a moderator, and it will only permit access to subs that the user is a moderator for.\n
    \n
    > Community bots will generally be free, subject to the following restrictions.\n
    \n
    > And 3rd party clients will be charged a minimal amount, calculated to be roughly equal to what we are making from similar users on the official clients, to make up for lost ad revenue. Alternate options involving profit sharing may be viable, contact X for details.\n
    \n
    > By accepting the API agreement, you agree that use of the wrong class of API usage (for example, using the community bot or 3rd party client classes for data scraping) will be billed, retroactively, at $X * 10.\n
    \n
    There. That's really not that hard. And people would have been *much* less upset at that, at least as long as the fees were *actually* as described, and not based on, say, how much they would *like* to make per user.\n
    \n
    You'd probably want a free tier for 3rd party clients for users of specific account types. If the user is paying for Reddit Premium, maybe 3rd party clients don't get charged for API usage for that user account. Or if the user is a moderator for a given subreddit, API usage for that user on that subreddit is also free. With an API that the client can use to check the status of such things. If they were *smart*, they would also have a process for users with disabilities to have their accounts exempted from fees. That last one is hard, because you need a verification process, but it would get them a *lot* of good will.\n
    \n
    Again... This *shouldn't be hard*. And it would have turned into a viable revenue stream!\n
    \n
    Hell, flatly disclose that the 3rd party cost is 30% *more* than the average cost of using the standard client, to support the effort required to maintain the API. (Largely bullshit, but it makes those users *more* valuable than those that use the official client, while not being expensive enough to make it impossible for anyone to offer a 3rd party client at an even remotely sane cost.)\n
    \n
    Yes, this would have very sadly been the end of free 3rd party clients... But I for one would have been... Okay with paying a small amount per month/year through the app store for a client that didn't suck.\n
    \n
    Instead, Reddit decided that committing suicide was the better path forward.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 25
  +score: 0
  +lastActive: DateTime @1688797655 {#1453
    date: 2023-07-08 08:27:35.0 +02:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@RealNooshie@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1693 …}
  +nested: Doctrine\ORM\PersistentCollection {#1695 …}
  +votes: Doctrine\ORM\PersistentCollection {#1698 …}
  +reports: Doctrine\ORM\PersistentCollection {#1709 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1429 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1672 …}
  -id: 8850
  -bodyTs: "'10':221 '30':408 '3rd':140,208,272,290,404,458,478 'accept':186 'access':80,118 'account':279,303,358 'actual':247 'ad':171 'agre':191 'agreement':189 'alright':46 'also':324,347 'altern':173 'alway':97 'amount':148,493 'anyon':454 'anywher':40 'api':54,102,188,199,298,315,328,427 'app':498 'associ':109 'averag':412 'base':252 'better':515 'bill':217 'bit':19,36 'bot':129,206 'bullshit':429 'calcul':149 'charg':145,296 'check':335 'class':197,211 'client':142,165,210,274,292,331,418,443,460,480,502 'close':41 'commit':511 'communiti':128,205 'contact':181 'cost':61,92,406,413,466 'could':8 'd':265 'data':213 'decent':13 'decid':24,509 'degre':45 'describ':249 'detail':184 'didn':504 'disabl':354 'disclos':401 'done':10 'effort':422 'end':475 'enough':448 'equal':153 'even':463 'everyth':76 'exampl':202 'exempt':359 'expens':447 'fair':18 'fee':245,361 'first':68 'flat':400 'follow':79,137 'forward':517 'free':99,133,269,325,477 'general':131 'get':77,295,376 'given':313 'go':56,90 'good':381 'half':12 'hard':228,366,388 'hell':399 'higher':84 'imposs':452 'instead':27,507 'involv':175 'job':14 'kind':65 'larg':428 'last':363 'least':240 'less':235 'like':259 'limit':86 'long':242 'lost':170 'lot':379 'made':16 'maintain':425 'make':158,167,261,432,450 'may':178 'mayb':289 'minim':147 'moder':94,112,126,310 'money':21,62 'month/year':495 'much':83,234,256 'need':369 'offer':456 'offici':164,442 'okay':488 'one':364,484 'option':174 'parti':141,209,273,291,405,459,479 'path':516 'pay':285,490 'peopl':34,70,230 'per':262,494 'permit':117 'premium':288 'probabl':266 'process':350,372 'profit':176 'rate':85 're':48 'realli':2,3,225 'reddit':7,287,508 'remot':464 'requir':104,423 'restrict':138 'retroact':218 'revenu':172,397 'rough':152 'sad':4,472 'sane':465 'say':254 'scrape':75,214 'share':177 'shouldn':385 'similar':160 'small':492 'smart':344 'sorri':49 'specif':278 'standard':417 'start':60 'status':337 'store':499 'stream':398 'stupid':26 'sub':120 'subject':134 'subreddit':314,322 'suck':506 'suicid':512 'support':420 'sure':28 'thing':5,340 'tier':270 'tool':95,107 'turn':393 'type':280 'upset':32,236 'usag':200,299,316 'use':51,67,193,203,333,415,440 'user':123,161,263,276,283,302,307,319,352,434 'valuabl':436 'verif':371 'viabl':180,396 'want':73,267 'would':30,231,258,346,375,391,469,485 'wrong':196 'x':93,182,220 'yes':467"
  +ranking: 0
  +commentCount: 0
  +upVotes: 6
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://kbin.social/m/RedditMigration/t/149498/-/comment/583444"
  +editedAt: null
  +createdAt: DateTimeImmutable @1688704849 {#1464
    date: 2023-07-07 06:40:49.0 +02:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
9 DENIED ROLE_ADMIN
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
10 DENIED ROLE_MODERATOR
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details