Built and signed on GitHub ActionsBuilt and signed on GitHub Actions
An ActivityPub/fediverse server framework
default
Fedify: a fediverse server framework
Indicates that the actor accepts the object. The target property can be
used in certain circumstances to indicate the context into which the object
has been accepted.
An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken.
- __fromJsonLd__Activity__
- _getCustomInspectProxy
- actorId
- actorIds
- clone
- fromJsonLd
- getActor
- getActors
- getInstrument
- getInstruments
- getObject
- getObjects
- getOrigin
- getOrigins
- getResult
- getResults
- getTarget
- getTargets
- instrumentId
- instrumentIds
- isCompactable
- objectId
- objectIds
- originId
- originIds
- resultId
- resultIds
- targetId
- targetIds
- toJsonLd
- typeId
A function that transforms an activity object.
A callback that maps a WebFinger query to the corresponding actor's
internal identifier or username, or null if the query is not found.
Additional settings for the actor dispatcher.
An activity transformer that dehydrates the actor property of an activity so that it only contains the actor's URI. For example, suppose we have an activity like this:
A callback that dispatches an Actor object.
A callback that maps a WebFinger username to the corresponding actor's
internal identifier, or null if the username is not found.
A pair of a public key and a private key in various formats.
A callback that dispatches key pairs for an actor.
A string representation of an actor type name.
Indicates that the actor has added the object to the target.
If the target property is not explicitly specified, the target would need
to be determined implicitly by context. The origin can be used to identify
the context from which the object originated.
Indicates that the actor is calling the target's attention the object.
Describes a software application.
- __fromJsonLd__Application__
- _getCustomInspectProxy
- aliasId
- aliasIds
- assertionMethodId
- assertionMethodIds
- cat
- clone
- discoverable
- endpoints
- featuredId
- featuredTagsId
- followedMessage
- followersId
- followingId
- fromJsonLd
- getAlias
- getAliases
- getAssertionMethod
- getAssertionMethods
- getFeatured
- getFeaturedTags
- getFollowers
- getFollowing
- getInbox
- getLiked
- getOutbox
- getPublicKey
- getPublicKeys
- getService
- getServices
- getStreams
- getSuccessor
- inboxId
- indexable
- isCompactable
- likedId
- manuallyApprovesFollowers
- memorial
- outboxId
- preferredUsername
- preferredUsernames
- publicKeyId
- publicKeyIds
- serviceId
- serviceIds
- streamIds
- successorId
- suspended
- toJsonLd
- typeId
An IntransitiveActivity that indicates that the actor has arrived at the location.
The origin can be used to identify the context from which the actor originated.
The target typically has no defined meaning.
Represents any kind of multi-paragraph written work.
Attaches a LD signature to the given JSON-LD document.
Represents an audio document of any kind.
A factory function that creates an authenticated DocumentLoader for a given identity. This is used for fetching documents that require authentication.
An activity transformer that assigns a new random ID to an activity if it does not already have one. This is useful for ensuring that activities have an ID before they are sent to other servers.
Indicates that the actor is blocking the object. Blocking is a stronger
form of Ignore. The typical use is to support social systems that
allow one user to block activities or content of other users. The target
and origin typically have no defined meaning.
Builds Collection-Synchronization header content.
ChatMessages are the messages sent in 1-on-1 chats. They are similar to
Notes, but the addressing is done by having a single AP actor in
the to field. Addressing multiple actors is not allowed. These messages
are always private, there is no public version of them. They are created with
a Create activity.
- __fromJsonLd__Collection__
- _getCustomInspectProxy
- clone
- currentId
- firstId
- followersOfId
- followingOfId
- fromJsonLd
- getCurrent
- getFirst
- getFollowersOf
- getFollowingOf
- getInboxOf
- getItems
- getLast
- getLikedOf
- getLikesOf
- getOutboxOf
- getRepliesOf
- getSharesOf
- inboxOfId
- isCompactable
- itemIds
- lastId
- likedOfId
- likesOfId
- outboxOfId
- repliesOfId
- sharesOfId
- toJsonLd
- totalItems
- typeId
Additional settings for a collection dispatcher.
A callback that counts the number of items in a collection.
A callback that returns a cursor for a collection.
A callback that dispatches a collection.
Used to represent distinct subsets of items from a Collection.
Refer to the Activity Streams 2.0 Core for a complete description of
the CollectionPage object.
Represents an object with a type ID, which is either a constructor or an instance of the object.
A context.
- canonicalOrigin
- clone
- contextLoader
- data
- documentLoader
- federation
- getActorKeyPairs
- getActorUri
- getCollectionUri
- getDocumentLoader
- getFeaturedTagsUri
- getFeaturedUri
- getFollowersUri
- getFollowingUri
- getInboxUri
- getLikedUri
- getNodeInfoUri
- getObjectUri
- getOutboxUri
- host
- hostname
- lookupNodeInfo
- lookupObject
- lookupWebFinger
- origin
- parseUri
- routeActivity
- sendActivity
- tracerProvider
- traverseCollection
Indicates that the actor has created the object.
Creates an exponential backoff retry policy. The delay between retries
starts at the initialDelay and is multiplied by the factor for each
subsequent retry, up to the maxDelay. The policy will give up after
maxAttempts attempts. The actual delay is randomized to avoid
synchronization (jitter).
Options for createExponentialBackoffPolicy function.
Creates a proof for the given object.
Creates a LD signature for the given JSON-LD document.
Additional settings for a custom collection dispatcher.
A callback that counts the number of items in a custom collection.
A callback that returns a cursor for a custom collection.
A callback that dispatches a custom collection.
A proof that can be added to any activity or object, allowing recipients to verify the identity of the actor and the integrity of the data.
Indicates that the actor has deleted the object. If specified,
the origin indicates the context from which the object was deleted.
Detaches Linked Data Signatures from the given JSON-LD document.
Means of communicating or interacting with the DID subject or associated entities via one or more service endpoints. Examples include discovery services, agent services, social networking services, file storage services, and verifiable credential repository services.
Calculates the partial follower collection digest.
Indicates that the actor dislikes the object.
Represents a document of any kind.
A JSON-LD document loader that fetches documents from the Web.
A factory function that creates a DocumentLoader with options.
Checks if the actor of the given activity owns the specified key.
Represents a custom emoji.
Represents an emoji reaction. See also FEP-c0e0.
Represents any kind of event.
"Export Actor" service.
Exports a key in JWK format.
Exports a public key in Multibase format.
Exports a public key in PEM-SPKI format.
A common interface between Federation and FederationBuilder.
- setActorDispatcher
- setCollectionDispatcher
- setFeaturedDispatcher
- setFeaturedTagsDispatcher
- setFollowersDispatcher
- setFollowingDispatcher
- setInboxDispatcher
- setInboxListeners
- setLikedDispatcher
- setNodeInfoDispatcher
- setObjectDispatcher
- setOrderedCollectionDispatcher
- setOutboxDispatcher
- setWebFingerLinksDispatcher
An object that registers federation-related business logic and dispatches requests to the appropriate handlers.
A builder for creating a Federation object. It defers the actual instantiation of the Federation object until the build method is called so that dispatchers and listeners can be registered before the Federation object is instantiated.
Parameters of Federation.fetch method.
Options for creating a Federation object.
- activityTransformers
- allowPrivateAddress
- authenticatedDocumentLoaderFactory
- contextLoader
- contextLoaderFactory
- documentLoader
- documentLoaderFactory
- firstKnock
- inboxRetryPolicy
- kv
- kvPrefixes
- manuallyStartQueue
- onOutboxError
- origin
- outboxRetryPolicy
- queue
- signatureTimeWindow
- skipSignatureVerification
- tracerProvider
- trailingSlashInsensitive
- userAgent
Represents a fediverse handle, which consists of a username and a host. The username can be alphanumeric and may include special characters, while the host is typically a domain name.
Fetches a CryptographicKey or Multikey from the given URL.
If the given URL contains an Actor object, it tries to find
the corresponding key in the publicKey or assertionMethod property.
Indicates that the actor is "flagging" the object. Flagging is defined
in the sense common to many social platforms as reporting content as being
inappropriate for any number of reasons.
Indicates that the actor is "following" the object. Following is defined
in the sense typically used within Social systems in which the actor is
interested in any activity performed by or on the object. The target and
origin typically have no defined meaning.
Format a SemVer object into a string.
Options for InboxContext.forwardActivity method.
Generates a key pair which is appropriate for Fedify.
Gets the actor class by the given type name.
Gets the actor handle, of the form @username@domain, from the given actor
or an actor URI.
Gets the type name of the given actor.
Gets an authenticated DocumentLoader for the given identity. Note that an authenticated document loader intentionally does not cache the fetched documents.
Options for getAuthenticatedDocumentLoader.
Gets the default activity transformers that are applied to all outgoing activities.
Creates a JSON-LD document loader that utilizes the browser's fetch API.
Gets the actor that owns the specified key. Returns null if the key has no
known owner.
Fetches a NodeInfo document from the given URL.
Options for Context.getSignedKey method.
Returns the type URI of the given object.
Gets the user agent string for the given application and URL.
Represents a formal or informal collective of Actors.
- __fromJsonLd__Group__
- _getCustomInspectProxy
- aliasId
- aliasIds
- assertionMethodId
- assertionMethodIds
- cat
- clone
- discoverable
- endpoints
- featuredId
- featuredTagsId
- followedMessage
- followersId
- followingId
- fromJsonLd
- getAlias
- getAliases
- getAssertionMethod
- getAssertionMethods
- getFeatured
- getFeaturedTags
- getFollowers
- getFollowing
- getInbox
- getLiked
- getOutbox
- getPublicKey
- getPublicKeys
- getService
- getServices
- getStreams
- getSuccessor
- inboxId
- indexable
- isCompactable
- likedId
- manuallyApprovesFollowers
- memorial
- outboxId
- preferredUsername
- preferredUsernames
- publicKeyId
- publicKeyIds
- serviceId
- serviceIds
- streamIds
- successorId
- suspended
- toJsonLd
- typeId
A specialized Link that represents an #hashtag.
The standard to use for signing and verifying HTTP signatures.
A spec determiner for HTTP Message Signatures. It determines the spec to use for signing requests. It is used for double-knocking (see https://swicg.github.io/activitypub-http-signature/#how-to-upgrade-supported-versions).
A callback to generate a custom idempotency key for an activity. Returns the cache key to use, or null to skip idempotency checking.
The strategy for handling activity idempotency in inbox processing.
Indicates that the actor is ignoring the object. The target and
origin typically have no defined meaning.
An image document of any kind.
Imports a key from JWK format.
Imports a Multibase-encoded public key.
Imports a PEM formatted public key (SPKI or PKCS#1).
Imports a PEM-PKCS#1 formatted public key.
Imports a PEM-SPKI formatted public key.
The third party sites this server can retrieve messages from for combined display with regular traffic.
A callback that handles errors in an inbox.
A callback that listens for activities in an inbox.
Registry for inbox listeners for different activity types.
A message queue that processes messages in the same process. Do not use this in production as it does neither persist messages nor distribute them across multiple processes.
Instances of IntransitiveActivity are a subtype of Activity
representing intransitive actions. The object property is therefore
inappropriate for these activities.
A specialization of Offer in which the actor is extending an invitation
for the object to the target.
Checks if the given object is an Actor.
Checks if a string is a valid fediverse handle in the format @user@server
or user@server. The user part can contain alphanumeric characters and
some special characters except @. The server part is all characters
after the @ symbol in the middle.
Indicates that the actor has joined the object.
The target and origin typically have no defined meaning.
The type of the result of parsing JSON.
A key for a key–value store. An array of one or more strings.
Indicates that the actor has left the object.
The target and origin typically have no meaning.
Indicates that the actor likes, recommends or endorses the object.
The target and origin typically have no defined meaning.
A Link is an indirect, qualified reference to a resource identified by a URL.
The fundamental model for links is established by RFC 5988. Many of the
properties defined by the Activity Vocabulary allow values that are either
instances of Object or Link. When a Link is used,
it establishes a qualified relation connecting the subject (the containing
object) to the resource identified by the href. Properties of
the Link are properties of the reference as opposed to properties of
the resource.
Indicates that the actor has listened to the object.
Looks up an ActivityStreams object by its URI (including acct: URIs)
or a fediverse handle (e.g., @user@server or user@server).
Options for the lookupObject function.
A specialized Link that represents an @mention.
Indicates that the actor has moved object from origin to target.
If the origin or target are not specified,
either can be determined by context.
A callback that dispatches a NodeInfo object.
Converts a NodeInfo object to a JSON value.
Normalizes the given actor handle.
Represents a short written work typically less than a single paragraph in length.
Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection.
- __fromJsonLd__Object__
- _cachedJsonLd
- _contextLoader
- _documentLoader
- _getCustomInspectProxy
- _tracerProvider
- _warning
- attachmentIds
- attributionId
- attributionIds
- audienceId
- audienceIds
- bccId
- bccIds
- btoId
- btoIds
- ccId
- ccIds
- clone
- content
- contents
- contextIds
- duration
- emojiReactionsId
- endTime
- fromJsonLd
- generatorIds
- getAttachments
- getAttribution
- getAttributions
- getAudience
- getAudiences
- getBcc
- getBccs
- getBto
- getBtos
- getCc
- getCcs
- getContexts
- getEmojiReactions
- getGenerators
- getIcon
- getIcons
- getImage
- getImages
- getLikes
- getLocation
- getLocations
- getPreview
- getPreviews
- getProof
- getProofs
- getReplies
- getReplyTarget
- getReplyTargets
- getShares
- getTags
- getTo
- getTos
- iconId
- iconIds
- id
- imageId
- imageIds
- isCompactable
- likesId
- locationId
- locationIds
- mediaType
- name
- names
- previewId
- previewIds
- proofId
- proofIds
- published
- repliesId
- replyTargetId
- replyTargetIds
- sensitive
- sharesId
- source
- startTime
- summaries
- summary
- tagIds
- toId
- toIds
- toJsonLd
- typeId
- updated
- url
- urls
A callback that dispatches an object.
Indicates that the actor is offering the object. If specified, the target indicates the entity to which the object is being offered.
A subtype of Collection in which members of the logical collection are assumed to always be strictly ordered.
Used to represent ordered subsets of items from an OrderedCollection.
Refer to the Activity Streams 2.0 Core for a complete description of
the OrderedCollectionPage object.
Represents an organization.
- __fromJsonLd__Organization__
- _getCustomInspectProxy
- aliasId
- aliasIds
- assertionMethodId
- assertionMethodIds
- cat
- clone
- discoverable
- endpoints
- featuredId
- featuredTagsId
- followedMessage
- followersId
- followingId
- fromJsonLd
- getAlias
- getAliases
- getAssertionMethod
- getAssertionMethods
- getFeatured
- getFeaturedTags
- getFollowers
- getFollowing
- getInbox
- getLiked
- getOutbox
- getPublicKey
- getPublicKeys
- getService
- getServices
- getStreams
- getSuccessor
- inboxId
- indexable
- isCompactable
- likedId
- manuallyApprovesFollowers
- memorial
- outboxId
- preferredUsername
- preferredUsernames
- publicKeyId
- publicKeyIds
- serviceId
- serviceIds
- streamIds
- successorId
- suspended
- toJsonLd
- typeId
The third party sites this server can publish messages to on the behalf of a user.
A callback that handles errors during outbox processing.
Represents a Web Page.
A message queue that processes messages in parallel. It takes another MessageQueue, and processes messages in parallel up to a certain number of workers.
Parses a fediverse handle in the format @user@server or user@server.
The user part can contain alphanumeric characters and some special
characters except @. The server part is all characters after the @
symbol in the middle.
Parses a NodeInfo document.
Attempt to parse a string as a semantic version, returning a SemVer object.
A result of parsing an URI.
Represents an individual person.
- __fromJsonLd__Person__
- _getCustomInspectProxy
- aliasId
- aliasIds
- assertionMethodId
- assertionMethodIds
- cat
- clone
- discoverable
- endpoints
- featuredId
- featuredTagsId
- followedMessage
- followersId
- followingId
- fromJsonLd
- getAlias
- getAliases
- getAssertionMethod
- getAssertionMethods
- getFeatured
- getFeaturedTags
- getFollowers
- getFollowing
- getInbox
- getLiked
- getOutbox
- getPublicKey
- getPublicKeys
- getService
- getServices
- getStreams
- getSuccessor
- inboxId
- indexable
- isCompactable
- likedId
- manuallyApprovesFollowers
- memorial
- outboxId
- preferredUsername
- preferredUsernames
- publicKeyId
- publicKeyIds
- serviceId
- serviceIds
- streamIds
- successorId
- suspended
- toJsonLd
- typeId
Represents a logical or physical location. See 5.3 Representing Places for additional information.
A Profile is a content object that describes another Object, typically used to describe Actor Type objects. The Profile.describes property is used to reference the object being described by the profile.
The protocols supported on this server.
The special public collection for public addressing. Do not mutate this object.
Represents a question being asked. Question objects are an extension of
IntransitiveActivity. That is, the Question object is an Activity,
but the direct object is the question itself and therefore it would not
contain an object property.
Indicates that the actor has read the object.
Indicates that the actor is rejecting the object. The target and
origin typically have no defined meaning.
Describes a relationship between two individuals. The Relationship.subject and Relationship.object properties are used to identify the connected individuals.
A remote JSON-LD document and its context fetched by a DocumentLoader.
Indicates that the actor is removing the object. If specified,
the origin indicates the context from which the object is being removed.
A context for a request.
A policy that determines the delay before the next retry.
Defines a union of all valid RFC 6570 URI Template expressions for a given parameter name.
Options for Context.routeActivity method.
An error thrown by the Router.
Options for Context.sendActivity method.
Options for Context.sendActivity method when sending to a collection.
Represents a service of any kind.
- __fromJsonLd__Service__
- _getCustomInspectProxy
- aliasId
- aliasIds
- assertionMethodId
- assertionMethodIds
- cat
- clone
- discoverable
- endpoints
- featuredId
- featuredTagsId
- followedMessage
- followersId
- followingId
- fromJsonLd
- getAlias
- getAliases
- getAssertionMethod
- getAssertionMethods
- getFeatured
- getFeaturedTags
- getFollowers
- getFollowing
- getInbox
- getLiked
- getOutbox
- getPublicKey
- getPublicKeys
- getService
- getServices
- getStreams
- getSuccessor
- inboxId
- indexable
- isCompactable
- likedId
- manuallyApprovesFollowers
- memorial
- outboxId
- preferredUsername
- preferredUsernames
- publicKeyId
- publicKeyIds
- serviceId
- serviceIds
- streamIds
- successorId
- suspended
- toJsonLd
- typeId
Signs the given JSON-LD document with the private key and returns the signed JSON-LD document.
Signs the given object with the private key and returns the signed object.
Signs a request using the given private key.
A specialization of Accept indicating that the acceptance is tentative.
A specialization of Reject in which the rejection is considered tentative.
Converts a fediverse handle in the format @user@server or user@server
to an acct: URI, which is a URL-like identifier for ActivityPub actors.
A Tombstone represents a content object that has been deleted.
It can be used in Collections to signify that there used to be
an object at this position, but it has been deleted.
Indicates that the actor is traveling to target from origin.
Travel is an IntransitiveObject whose actor specifies the direct object.
If the target or origin are not specified,
either can be determined by context.
Traverses a collection, yielding each item in the collection. If the collection is paginated, it will fetch the next page automatically.
Options for the traverseCollection function.
Indicates that the actor is undoing the object. In most cases,
the object will be an Activity describing some previously performed
action (for instance, a person may have previously "liked" an article but,
for whatever reason, might choose to undo that like at some later point in
time).
Indicates that the actor has updated the object. Note, however,
that this vocabulary does not define a mechanism for describing the actual
set of modifications made to object.
Verify the authenticity of the given JSON-LD document using Linked Data
Signatures. If the document is signed, this function verifies the signature
and checks if the document is attributed to the owner of the public key.
If the document is not signed, this function returns false.
Options for verifying JSON-LD documents.
Verifies the given object. It will verify all the proofs in the object, and succeed only if all the proofs are valid and all attributions and actors are authenticated by the proofs.
Options for verifyObject.
Verifies the given proof for the object.
Verifies the signature of a request.
Options for verifyRequest.
Verifies Linked Data Signatures of the given JSON-LD document.
Options for verifying Linked Data Signatures.
Represents a video document of any kind.
Indicates that the actor has viewed the object.
A callback that dispatches a array of Link.
A function that transforms an activity object.
An activity transformer that dehydrates the actor property of an activity so that it only contains the actor's URI. For example, suppose we have an activity like this:
An activity transformer that assigns a new random ID to an activity if it does not already have one. This is useful for ensuring that activities have an ID before they are sent to other servers.
Gets the default activity transformers that are applied to all outgoing activities.
federation
The federated server framework.
A callback that maps a WebFinger query to the corresponding actor's
internal identifier or username, or null if the query is not found.
Additional settings for the actor dispatcher.
A callback that dispatches an Actor object.
A callback that maps a WebFinger username to the corresponding actor's
internal identifier, or null if the username is not found.
A pair of a public key and a private key in various formats.
A callback that dispatches key pairs for an actor.
Builds Collection-Synchronization header content.
Additional settings for a collection dispatcher.
A callback that counts the number of items in a collection.
A callback that returns a cursor for a collection.
A callback that dispatches a collection.
Represents an object with a type ID, which is either a constructor or an instance of the object.
A context.
- canonicalOrigin
- clone
- contextLoader
- data
- documentLoader
- federation
- getActorKeyPairs
- getActorUri
- getCollectionUri
- getDocumentLoader
- getFeaturedTagsUri
- getFeaturedUri
- getFollowersUri
- getFollowingUri
- getInboxUri
- getLikedUri
- getNodeInfoUri
- getObjectUri
- getOutboxUri
- host
- hostname
- lookupNodeInfo
- lookupObject
- lookupWebFinger
- origin
- parseUri
- routeActivity
- sendActivity
- tracerProvider
- traverseCollection
Creates an exponential backoff retry policy. The delay between retries
starts at the initialDelay and is multiplied by the factor for each
subsequent retry, up to the maxDelay. The policy will give up after
maxAttempts attempts. The actual delay is randomized to avoid
synchronization (jitter).
Options for createExponentialBackoffPolicy function.
Create a new Federation instance.
Creates a new FederationBuilder instance.
Additional settings for a custom collection dispatcher.
A callback that counts the number of items in a custom collection.
A callback that returns a cursor for a custom collection.
A callback that dispatches a custom collection.
Calculates the partial follower collection digest.
A common interface between Federation and FederationBuilder.
- setActorDispatcher
- setCollectionDispatcher
- setFeaturedDispatcher
- setFeaturedTagsDispatcher
- setFollowersDispatcher
- setFollowingDispatcher
- setInboxDispatcher
- setInboxListeners
- setLikedDispatcher
- setNodeInfoDispatcher
- setObjectDispatcher
- setOrderedCollectionDispatcher
- setOutboxDispatcher
- setWebFingerLinksDispatcher
An object that registers federation-related business logic and dispatches requests to the appropriate handlers.
A builder for creating a Federation object. It defers the actual instantiation of the Federation object until the build method is called so that dispatchers and listeners can be registered before the Federation object is instantiated.
Parameters of Federation.fetch method.
Prefixes for namespacing keys in the Deno KV store.
Options for creating a Federation object.
- activityTransformers
- allowPrivateAddress
- authenticatedDocumentLoaderFactory
- contextLoader
- contextLoaderFactory
- documentLoader
- documentLoaderFactory
- firstKnock
- inboxRetryPolicy
- kv
- kvPrefixes
- manuallyStartQueue
- onOutboxError
- origin
- outboxRetryPolicy
- queue
- signatureTimeWindow
- skipSignatureVerification
- tracerProvider
- trailingSlashInsensitive
- userAgent
Options for CreateFederationOptions.origin when it is not a string.
Configures the task queues for sending and receiving activities.
Options for InboxContext.forwardActivity method.
Options for Context.getSignedKey method.
A callback to generate a custom idempotency key for an activity. Returns the cache key to use, or null to skip idempotency checking.
The strategy for handling activity idempotency in inbox processing.
A callback that handles errors in an inbox.
A callback that listens for activities in an inbox.
Registry for inbox listeners for different activity types.
A message queue that processes messages in the same process. Do not use this in production as it does neither persist messages nor distribute them across multiple processes.
A key for a key–value store. An array of one or more strings.
A message that represents a task to be processed by the background worker.
The concrete type of the message depends on the type property.
A callback that dispatches a NodeInfo object.
A callback that dispatches an object.
A callback that handles errors during outbox processing.
A message queue that processes messages in parallel. It takes another MessageQueue, and processes messages in parallel up to a certain number of workers.
A result of parsing an URI.
A context for a request.
Responds with the given object in JSON-LD format.
Responds with the given object in JSON-LD format if the request accepts JSON-LD.
Options for the respondWithObject and respondWithObjectIfAcceptable functions.
A policy that determines the delay before the next retry.
Defines a union of all valid RFC 6570 URI Template expressions for a given parameter name.
Options for Context.routeActivity method.
An error thrown by the Router.
Options for Context.sendActivity method.
Options for Context.sendActivity method when sending to a collection.
A callback that dispatches a array of Link.
Options for createFederation function.
The third party sites this server can retrieve messages from for combined display with regular traffic.
The type of the result of parsing JSON.
Converts a NodeInfo object to a JSON value.
The third party sites this server can publish messages to on the behalf of a user.
The protocols supported on this server.
otel
OpenTelemetry integration utilities for Fedify.
The direction of an activity in the trace.
A SpanExporter that persists ActivityPub activity traces to a KvStore. This enables distributed tracing across multiple nodes in a Fedify deployment.
Signature verification details for an inbound activity.
A record of an activity captured from a trace span. This interface stores the activity data along with trace context for distributed tracing support.
runtime
This module contains the runtime facilities for working with Activity Vocabulary objects, which are auto-generated from the IDL.
Exports a public key in Multibase format.
Exports a public key in PEM-SPKI format.
Gets an authenticated DocumentLoader for the given identity. Note that an authenticated document loader intentionally does not cache the fetched documents.
Options for getAuthenticatedDocumentLoader.
Imports a Multibase-encoded public key.
Imports a PEM formatted public key (SPKI or PKCS#1).
Imports a PEM-PKCS#1 formatted public key.
Imports a PEM-SPKI formatted public key.
sig
HTTP Signatures implementation.
Creates a proof for the given object.
Signs the given object with the private key and returns the signed object.
Verifies the given object. It will verify all the proofs in the object, and succeed only if all the proofs are valid and all attributions and actors are authenticated by the proofs.
Options for verifyObject.
Verifies the given proof for the object.
vocab
A set of type-safe object mappings for the Activity Vocabulary.
Indicates that the actor accepts the object. The target property can be
used in certain circumstances to indicate the context into which the object
has been accepted.
An Activity is a subtype of Object that describes some form of action that may happen, is currently happening, or has already happened. The Activity type itself serves as an abstract base type for all types of activities. It is important to note that the Activity type itself does not carry any specific semantics about the kind of action being taken.
- __fromJsonLd__Activity__
- _getCustomInspectProxy
- actorId
- actorIds
- clone
- fromJsonLd
- getActor
- getActors
- getInstrument
- getInstruments
- getObject
- getObjects
- getOrigin
- getOrigins
- getResult
- getResults
- getTarget
- getTargets
- instrumentId
- instrumentIds
- isCompactable
- objectId
- objectIds
- originId
- originIds
- resultId
- resultIds
- targetId
- targetIds
- toJsonLd
- typeId
A string representation of an actor type name.
Indicates that the actor has added the object to the target.
If the target property is not explicitly specified, the target would need
to be determined implicitly by context. The origin can be used to identify
the context from which the object originated.
Indicates that the actor is calling the target's attention the object.
Describes a software application.
- __fromJsonLd__Application__
- _getCustomInspectProxy
- aliasId
- aliasIds
- assertionMethodId
- assertionMethodIds
- cat
- clone
- discoverable
- endpoints
- featuredId
- featuredTagsId
- followedMessage
- followersId
- followingId
- fromJsonLd
- getAlias
- getAliases
- getAssertionMethod
- getAssertionMethods
- getFeatured
- getFeaturedTags
- getFollowers
- getFollowing
- getInbox
- getLiked
- getOutbox
- getPublicKey
- getPublicKeys
- getService
- getServices
- getStreams
- getSuccessor
- inboxId
- indexable
- isCompactable
- likedId
- manuallyApprovesFollowers
- memorial
- outboxId
- preferredUsername
- preferredUsernames
- publicKeyId
- publicKeyIds
- serviceId
- serviceIds
- streamIds
- successorId
- suspended
- toJsonLd
- typeId
An IntransitiveActivity that indicates that the actor has arrived at the location.
The origin can be used to identify the context from which the actor originated.
The target typically has no defined meaning.
Represents any kind of multi-paragraph written work.
Represents an audio document of any kind.
Indicates that the actor is blocking the object. Blocking is a stronger
form of Ignore. The typical use is to support social systems that
allow one user to block activities or content of other users. The target
and origin typically have no defined meaning.
ChatMessages are the messages sent in 1-on-1 chats. They are similar to
Notes, but the addressing is done by having a single AP actor in
the to field. Addressing multiple actors is not allowed. These messages
are always private, there is no public version of them. They are created with
a Create activity.
- __fromJsonLd__Collection__
- _getCustomInspectProxy
- clone
- currentId
- firstId
- followersOfId
- followingOfId
- fromJsonLd
- getCurrent
- getFirst
- getFollowersOf
- getFollowingOf
- getInboxOf
- getItems
- getLast
- getLikedOf
- getLikesOf
- getOutboxOf
- getRepliesOf
- getSharesOf
- inboxOfId
- isCompactable
- itemIds
- lastId
- likedOfId
- likesOfId
- outboxOfId
- repliesOfId
- sharesOfId
- toJsonLd
- totalItems
- typeId
Used to represent distinct subsets of items from a Collection.
Refer to the Activity Streams 2.0 Core for a complete description of
the CollectionPage object.
Indicates that the actor has created the object.
A proof that can be added to any activity or object, allowing recipients to verify the identity of the actor and the integrity of the data.
Indicates that the actor has deleted the object. If specified,
the origin indicates the context from which the object was deleted.
Means of communicating or interacting with the DID subject or associated entities via one or more service endpoints. Examples include discovery services, agent services, social networking services, file storage services, and verifiable credential repository services.
Indicates that the actor dislikes the object.
Represents a document of any kind.
Represents a custom emoji.
Represents an emoji reaction. See also FEP-c0e0.
Represents any kind of event.
"Export Actor" service.
Represents a fediverse handle, which consists of a username and a host. The username can be alphanumeric and may include special characters, while the host is typically a domain name.
Indicates that the actor is "flagging" the object. Flagging is defined
in the sense common to many social platforms as reporting content as being
inappropriate for any number of reasons.
Indicates that the actor is "following" the object. Following is defined
in the sense typically used within Social systems in which the actor is
interested in any activity performed by or on the object. The target and
origin typically have no defined meaning.
Gets the actor class by the given type name.
Gets the actor handle, of the form @username@domain, from the given actor
or an actor URI.
Gets the type name of the given actor.
Returns the type URI of the given object.
Represents a formal or informal collective of Actors.
- __fromJsonLd__Group__
- _getCustomInspectProxy
- aliasId
- aliasIds
- assertionMethodId
- assertionMethodIds
- cat
- clone
- discoverable
- endpoints
- featuredId
- featuredTagsId
- followedMessage
- followersId
- followingId
- fromJsonLd
- getAlias
- getAliases
- getAssertionMethod
- getAssertionMethods
- getFeatured
- getFeaturedTags
- getFollowers
- getFollowing
- getInbox
- getLiked
- getOutbox
- getPublicKey
- getPublicKeys
- getService
- getServices
- getStreams
- getSuccessor
- inboxId
- indexable
- isCompactable
- likedId
- manuallyApprovesFollowers
- memorial
- outboxId
- preferredUsername
- preferredUsernames
- publicKeyId
- publicKeyIds
- serviceId
- serviceIds
- streamIds
- successorId
- suspended
- toJsonLd
- typeId
A specialized Link that represents an #hashtag.
Indicates that the actor is ignoring the object. The target and
origin typically have no defined meaning.
An image document of any kind.
Instances of IntransitiveActivity are a subtype of Activity
representing intransitive actions. The object property is therefore
inappropriate for these activities.
A specialization of Offer in which the actor is extending an invitation
for the object to the target.
Checks if the given object is an Actor.
Checks if a string is a valid fediverse handle in the format @user@server
or user@server. The user part can contain alphanumeric characters and
some special characters except @. The server part is all characters
after the @ symbol in the middle.
Indicates that the actor has joined the object.
The target and origin typically have no defined meaning.
Indicates that the actor has left the object.
The target and origin typically have no meaning.
Indicates that the actor likes, recommends or endorses the object.
The target and origin typically have no defined meaning.
A Link is an indirect, qualified reference to a resource identified by a URL.
The fundamental model for links is established by RFC 5988. Many of the
properties defined by the Activity Vocabulary allow values that are either
instances of Object or Link. When a Link is used,
it establishes a qualified relation connecting the subject (the containing
object) to the resource identified by the href. Properties of
the Link are properties of the reference as opposed to properties of
the resource.
Indicates that the actor has listened to the object.
Looks up an ActivityStreams object by its URI (including acct: URIs)
or a fediverse handle (e.g., @user@server or user@server).
Options for the lookupObject function.
A specialized Link that represents an @mention.
Indicates that the actor has moved object from origin to target.
If the origin or target are not specified,
either can be determined by context.
Normalizes the given actor handle.
Represents a short written work typically less than a single paragraph in length.
Describes an object of any kind. The Object type serves as the base type for most of the other kinds of objects defined in the Activity Vocabulary, including other Core types such as Activity, IntransitiveActivity, Collection and OrderedCollection.
- __fromJsonLd__Object__
- _cachedJsonLd
- _contextLoader
- _documentLoader
- _getCustomInspectProxy
- _tracerProvider
- _warning
- attachmentIds
- attributionId
- attributionIds
- audienceId
- audienceIds
- bccId
- bccIds
- btoId
- btoIds
- ccId
- ccIds
- clone
- content
- contents
- contextIds
- duration
- emojiReactionsId
- endTime
- fromJsonLd
- generatorIds
- getAttachments
- getAttribution
- getAttributions
- getAudience
- getAudiences
- getBcc
- getBccs
- getBto
- getBtos
- getCc
- getCcs
- getContexts
- getEmojiReactions
- getGenerators
- getIcon
- getIcons
- getImage
- getImages
- getLikes
- getLocation
- getLocations
- getPreview
- getPreviews
- getProof
- getProofs
- getReplies
- getReplyTarget
- getReplyTargets
- getShares
- getTags
- getTo
- getTos
- iconId
- iconIds
- id
- imageId
- imageIds
- isCompactable
- likesId
- locationId
- locationIds
- mediaType
- name
- names
- previewId
- previewIds
- proofId
- proofIds
- published
- repliesId
- replyTargetId
- replyTargetIds
- sensitive
- sharesId
- source
- startTime
- summaries
- summary
- tagIds
- toId
- toIds
- toJsonLd
- typeId
- updated
- url
- urls
Indicates that the actor is offering the object. If specified, the target indicates the entity to which the object is being offered.
A subtype of Collection in which members of the logical collection are assumed to always be strictly ordered.
Used to represent ordered subsets of items from an OrderedCollection.
Refer to the Activity Streams 2.0 Core for a complete description of
the OrderedCollectionPage object.
Represents an organization.
- __fromJsonLd__Organization__
- _getCustomInspectProxy
- aliasId
- aliasIds
- assertionMethodId
- assertionMethodIds
- cat
- clone
- discoverable
- endpoints
- featuredId
- featuredTagsId
- followedMessage
- followersId
- followingId
- fromJsonLd
- getAlias
- getAliases
- getAssertionMethod
- getAssertionMethods
- getFeatured
- getFeaturedTags
- getFollowers
- getFollowing
- getInbox
- getLiked
- getOutbox
- getPublicKey
- getPublicKeys
- getService
- getServices
- getStreams
- getSuccessor
- inboxId
- indexable
- isCompactable
- likedId
- manuallyApprovesFollowers
- memorial
- outboxId
- preferredUsername
- preferredUsernames
- publicKeyId
- publicKeyIds
- serviceId
- serviceIds
- streamIds
- successorId
- suspended
- toJsonLd
- typeId
Represents a Web Page.
Parses a fediverse handle in the format @user@server or user@server.
The user part can contain alphanumeric characters and some special
characters except @. The server part is all characters after the @
symbol in the middle.
Represents an individual person.
- __fromJsonLd__Person__
- _getCustomInspectProxy
- aliasId
- aliasIds
- assertionMethodId
- assertionMethodIds
- cat
- clone
- discoverable
- endpoints
- featuredId
- featuredTagsId
- followedMessage
- followersId
- followingId
- fromJsonLd
- getAlias
- getAliases
- getAssertionMethod
- getAssertionMethods
- getFeatured
- getFeaturedTags
- getFollowers
- getFollowing
- getInbox
- getLiked
- getOutbox
- getPublicKey
- getPublicKeys
- getService
- getServices
- getStreams
- getSuccessor
- inboxId
- indexable
- isCompactable
- likedId
- manuallyApprovesFollowers
- memorial
- outboxId
- preferredUsername
- preferredUsernames
- publicKeyId
- publicKeyIds
- serviceId
- serviceIds
- streamIds
- successorId
- suspended
- toJsonLd
- typeId
Represents a logical or physical location. See 5.3 Representing Places for additional information.
A Profile is a content object that describes another Object, typically used to describe Actor Type objects. The Profile.describes property is used to reference the object being described by the profile.
The special public collection for public addressing. Do not mutate this object.
Represents a question being asked. Question objects are an extension of
IntransitiveActivity. That is, the Question object is an Activity,
but the direct object is the question itself and therefore it would not
contain an object property.
Indicates that the actor has read the object.
Indicates that the actor is rejecting the object. The target and
origin typically have no defined meaning.
Describes a relationship between two individuals. The Relationship.subject and Relationship.object properties are used to identify the connected individuals.
Indicates that the actor is removing the object. If specified,
the origin indicates the context from which the object is being removed.
Represents a service of any kind.
- __fromJsonLd__Service__
- _getCustomInspectProxy
- aliasId
- aliasIds
- assertionMethodId
- assertionMethodIds
- cat
- clone
- discoverable
- endpoints
- featuredId
- featuredTagsId
- followedMessage
- followersId
- followingId
- fromJsonLd
- getAlias
- getAliases
- getAssertionMethod
- getAssertionMethods
- getFeatured
- getFeaturedTags
- getFollowers
- getFollowing
- getInbox
- getLiked
- getOutbox
- getPublicKey
- getPublicKeys
- getService
- getServices
- getStreams
- getSuccessor
- inboxId
- indexable
- isCompactable
- likedId
- manuallyApprovesFollowers
- memorial
- outboxId
- preferredUsername
- preferredUsernames
- publicKeyId
- publicKeyIds
- serviceId
- serviceIds
- streamIds
- successorId
- suspended
- toJsonLd
- typeId
A specialization of Accept indicating that the acceptance is tentative.
A specialization of Reject in which the rejection is considered tentative.
Converts a fediverse handle in the format @user@server or user@server
to an acct: URI, which is a URL-like identifier for ActivityPub actors.
A Tombstone represents a content object that has been deleted.
It can be used in Collections to signify that there used to be
an object at this position, but it has been deleted.
Indicates that the actor is traveling to target from origin.
Travel is an IntransitiveObject whose actor specifies the direct object.
If the target or origin are not specified,
either can be determined by context.
Traverses a collection, yielding each item in the collection. If the collection is paginated, it will fetch the next page automatically.
Options for the traverseCollection function.
Indicates that the actor is undoing the object. In most cases,
the object will be an Activity describing some previously performed
action (for instance, a person may have previously "liked" an article but,
for whatever reason, might choose to undo that like at some later point in
time).
Indicates that the actor has updated the object. Note, however,
that this vocabulary does not define a mechanism for describing the actual
set of modifications made to object.
Represents a video document of any kind.
Indicates that the actor has viewed the object.
webfinger
Exports WebFinger-related types and functions.
Looks up a WebFinger resource.
Options for lookupWebFinger.
Describes a resource. See also RFC 7033 section 4.4.
x/cfworkers
KvStore & MessageQueue adapters for Cloudflare Workers
Implementation of the KvStore interface for Cloudflare Workers KV binding. This class provides a wrapper around Cloudflare's KV namespace to store and retrieve JSON-serializable values using structured keys.
Implementation of the MessageQueue interface for Cloudflare Workers Queues binding. This class provides a wrapper around Cloudflare's Queues to send messages to a queue.
x/denokv
KvStore & MessageQueue adapters for Deno's KV store
Represents a message queue adapter that uses Deno KV store.
x/fresh
Fedify with Fresh
Create options for the Federation.fetch method to integrate with Fresh.
Create a Fresh middleware handler to integrate with the Federation object.
x/hono
Fedify with Hono
A factory function to create a context data for the Federation object.
Create a Hono middleware to integrate with the Federation object.
x/sveltekit
Fedify with SvelteKit
Create a SvelteKit hook handler to integrate with the Federation object.