Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse

NodeBB

  1. Home
  2. General Discussion
  3. #activitypub follow-up question: Thanks to @silverpill I made progress with my "Follow" request sent to Mastodon.

#activitypub follow-up question: Thanks to @silverpill I made progress with my "Follow" request sent to Mastodon.

Scheduled Pinned Locked Moved General Discussion
activitypub
14 Posts 3 Posters 2 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • achim@social.saarlandA achim@social.saarland

    [...] I checked out the Mastodon source code and searched for the error message. My Ruby-skills are limited, but it looks like Mastodon expects the type "Account".

    I dont't understand what Mastodon expects from me. Any hint would be highly appreciated.

    In the meanwhile I'll give https://activitypub.academy/ ad try ...

    @silverpill @evan

    evan@cosocial.caE This user is from outside of this forum
    evan@cosocial.caE This user is from outside of this forum
    evan@cosocial.ca
    wrote on last edited by
    #3

    @achim @silverpill no, I think Mastodon accepts `Person` just fine.

    evan@cosocial.caE 1 Reply Last reply
    0
    • evan@cosocial.caE evan@cosocial.ca

      @achim @silverpill no, I think Mastodon accepts `Person` just fine.

      evan@cosocial.caE This user is from outside of this forum
      evan@cosocial.caE This user is from outside of this forum
      evan@cosocial.ca
      wrote on last edited by
      #4

      @achim @silverpill you either need to provide an URL to the key itself, with type "PublicKey", and a link to "Person" that is the "owner", or you can provide the URL of the "Person" with an URL fragment "main-key", and your person has to have a "publicKey" property.

      achim@social.saarlandA 1 Reply Last reply
      0
      • evan@cosocial.caE evan@cosocial.ca

        @achim @silverpill you either need to provide an URL to the key itself, with type "PublicKey", and a link to "Person" that is the "owner", or you can provide the URL of the "Person" with an URL fragment "main-key", and your person has to have a "publicKey" property.

        achim@social.saarlandA This user is from outside of this forum
        achim@social.saarlandA This user is from outside of this forum
        achim@social.saarland
        wrote on last edited by
        #5

        @evan Thanks for your response. @silverpill already mentioned the "main-key" fragment. Is that documented somewhere?

        I had an implementation that returned just an object of type "PublicKey" if the "./key" endpoint is called.

        I checked what I get back from Mastodon if I call my profile with the "main-key" fragment. The result is the full profile.

        So should I either refer to the profile url with the fragment and return the full "Person" OR [...]

        achim@social.saarlandA evan@cosocial.caE silverpill@mitra.socialS 3 Replies Last reply
        0
        • achim@social.saarlandA achim@social.saarland

          @evan Thanks for your response. @silverpill already mentioned the "main-key" fragment. Is that documented somewhere?

          I had an implementation that returned just an object of type "PublicKey" if the "./key" endpoint is called.

          I checked what I get back from Mastodon if I call my profile with the "main-key" fragment. The result is the full profile.

          So should I either refer to the profile url with the fragment and return the full "Person" OR [...]

          achim@social.saarlandA This user is from outside of this forum
          achim@social.saarlandA This user is from outside of this forum
          achim@social.saarland
          wrote on last edited by
          #6

          [...] use a dedicated url (i.e. mine with an appended ./key) and just return an object of type "PublicKey"?

          @evan @silverpill

          evan@cosocial.caE 1 Reply Last reply
          0
          • achim@social.saarlandA achim@social.saarland

            @evan Thanks for your response. @silverpill already mentioned the "main-key" fragment. Is that documented somewhere?

            I had an implementation that returned just an object of type "PublicKey" if the "./key" endpoint is called.

            I checked what I get back from Mastodon if I call my profile with the "main-key" fragment. The result is the full profile.

            So should I either refer to the profile url with the fragment and return the full "Person" OR [...]

            evan@cosocial.caE This user is from outside of this forum
            evan@cosocial.caE This user is from outside of this forum
            evan@cosocial.ca
            wrote on last edited by
            #7

            @achim @silverpill yes, it's documented in my book.

            evan@cosocial.caE 1 Reply Last reply
            0
            • achim@social.saarlandA achim@social.saarland

              [...] use a dedicated url (i.e. mine with an appended ./key) and just return an object of type "PublicKey"?

              @evan @silverpill

              evan@cosocial.caE This user is from outside of this forum
              evan@cosocial.caE This user is from outside of this forum
              evan@cosocial.ca
              wrote on last edited by
              #8

              @achim @silverpill I'm rereading the book section on public keys, and it looks good. Do it like that!

              achim@social.saarlandA 1 Reply Last reply
              0
              • evan@cosocial.caE evan@cosocial.ca

                @achim @silverpill I'm rereading the book section on public keys, and it looks good. Do it like that!

                achim@social.saarlandA This user is from outside of this forum
                achim@social.saarlandA This user is from outside of this forum
                achim@social.saarland
                wrote on last edited by
                #9

                @evan I read that section and implemented the preferred version, not the Mastodon one. That did not work, but I might got confused by other mistakes I made. Will give it another try. Thanks for your help!

                @silverpill

                evan@cosocial.caE 1 Reply Last reply
                0
                • evan@cosocial.caE evan@cosocial.ca

                  @achim @silverpill yes, it's documented in my book.

                  evan@cosocial.caE This user is from outside of this forum
                  evan@cosocial.caE This user is from outside of this forum
                  evan@cosocial.ca
                  wrote on last edited by
                  #10

                  @achim @silverpill So, here's a minimal example of a key object:

                  https://gist.github.com/evanp/874d92e8f5965fa59352e8c551507254

                  evan@cosocial.caE 1 Reply Last reply
                  0
                  • evan@cosocial.caE evan@cosocial.ca

                    @achim @silverpill So, here's a minimal example of a key object:

                    https://gist.github.com/evanp/874d92e8f5965fa59352e8c551507254

                    evan@cosocial.caE This user is from outside of this forum
                    evan@cosocial.caE This user is from outside of this forum
                    evan@cosocial.ca
                    wrote on last edited by
                    #11

                    @achim @silverpill And here's the corresponding person object:

                    https://gist.github.com/evanp/792c62ebb636eeb7a231ff43cca402e0

                    evan@cosocial.caE 1 Reply Last reply
                    0
                    • evan@cosocial.caE evan@cosocial.ca

                      @achim @silverpill And here's the corresponding person object:

                      https://gist.github.com/evanp/792c62ebb636eeb7a231ff43cca402e0

                      evan@cosocial.caE This user is from outside of this forum
                      evan@cosocial.caE This user is from outside of this forum
                      evan@cosocial.ca
                      wrote on last edited by
                      #12

                      @achim @silverpill Some things to note:

                      - They have to point to each other
                      - I think the "publicKey" object in the person has to be an embedded object for Mastodon; it won't accept an URL as the property value.

                      1 Reply Last reply
                      0
                      • achim@social.saarlandA achim@social.saarland

                        @evan I read that section and implemented the preferred version, not the Mastodon one. That did not work, but I might got confused by other mistakes I made. Will give it another try. Thanks for your help!

                        @silverpill

                        evan@cosocial.caE This user is from outside of this forum
                        evan@cosocial.caE This user is from outside of this forum
                        evan@cosocial.ca
                        wrote on last edited by
                        #13

                        @achim @silverpill OK. Try the samples I gave!

                        1 Reply Last reply
                        0
                        • achim@social.saarlandA achim@social.saarland

                          @evan Thanks for your response. @silverpill already mentioned the "main-key" fragment. Is that documented somewhere?

                          I had an implementation that returned just an object of type "PublicKey" if the "./key" endpoint is called.

                          I checked what I get back from Mastodon if I call my profile with the "main-key" fragment. The result is the full profile.

                          So should I either refer to the profile url with the fragment and return the full "Person" OR [...]

                          silverpill@mitra.socialS This user is from outside of this forum
                          silverpill@mitra.socialS This user is from outside of this forum
                          silverpill@mitra.social
                          wrote on last edited by
                          #14

                          @achim @evan The fragment ID could be different but it needs to be embedded in your actor document. Here's a JSON schema:

                          https://codeberg.org/ap-next/ap-next/src/branch/main/schemas/actor.schema.json

                          1 Reply Last reply
                          0

                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                          With your input, this post could be even better 💗

                          Register Login
                          Reply
                          • Reply as topic
                          Log in to reply
                          • Oldest to Newest
                          • Newest to Oldest
                          • Most Votes


                          • Login

                          • Don't have an account? Register

                          • Login or register to search.
                          Powered by NodeBB Contributors
                          • First post
                            Last post
                          0
                          • Categories
                          • Recent
                          • Tags
                          • Popular
                          • World
                          • Users
                          • Groups