.activity_pub.models
cattle_grid.activity_pub.models
Data model used to describe ActivityPub related objects
Actor
Bases: Model
Actors administrated by cattle_grid
Source code in cattle_grid/activity_pub/models.py
actor_id = fields.CharField(max_length=255, unique=True)
class-attribute
instance-attribute
The id of the actor
automatically_accept_followers = fields.BooleanField()
class-attribute
instance-attribute
Set to true to indicate cattle_grid should automatically accept follow requests
followers_uri = fields.CharField(max_length=255, unique=True)
class-attribute
instance-attribute
The uri of the followers collection
following_uri = fields.CharField(max_length=255, unique=True)
class-attribute
instance-attribute
The uri of the following collection
inbox_uri = fields.CharField(max_length=255, unique=True)
class-attribute
instance-attribute
The uri of the inbox
outbox_uri = fields.CharField(max_length=255, unique=True)
class-attribute
instance-attribute
The uri of the outbox
preferred_username = fields.CharField(max_length=255, null=True)
class-attribute
instance-attribute
The preferred username, used as the username part of the
acct-uri of the actor, i.e. acct:${preferred_username}@domain
.
See RFC 7565 The ‘acct’ URI Scheme.
profile = fields.JSONField()
class-attribute
instance-attribute
Additional profile values
public_key = fields.TextField()
class-attribute
instance-attribute
The public key
public_key_name = fields.CharField(max_length=255)
class-attribute
instance-attribute
The name given to the public key, i.e. the id will be `${actor_id}#${public_key_name}.
status = fields.CharEnumField(ActorStatus, default=ActorStatus.active)
class-attribute
instance-attribute
Represents the status of the actor
ActorStatus
Blocking
Bases: Model
The people the actor is blocking
Source code in cattle_grid/activity_pub/models.py
Credential
Follower
Bases: Model
The people that follow the actor
Source code in cattle_grid/activity_pub/models.py
Following
Bases: Model
The people the actor is following
Source code in cattle_grid/activity_pub/models.py
InboxLocation
Bases: Model
Describes the location of an inbox. Used to send ActivityPub Activities addressed to the actor to the corresponding inbox.
This information is also collected for remote actors.
Source code in cattle_grid/activity_pub/models.py
actor = fields.CharField(max_length=255, unique=True)
class-attribute
instance-attribute
The id of the remote actor
inbox = fields.CharField(max_length=255)
class-attribute
instance-attribute
The inbox of the remote actor
PublicIdentifier
Bases: Model
Public identifiers
Source code in cattle_grid/activity_pub/models.py
actor = fields.ForeignKeyField('ap_models.Actor', related_name='identifiers')
class-attribute
instance-attribute
The actor the public key belongs to
identifier = fields.CharField(max_length=255, unique=True)
class-attribute
instance-attribute
The public identifier, e.g. an acct-uri
name = fields.CharField(max_length=255)
class-attribute
instance-attribute
name of public identifier
preference = fields.IntField(default=0)
class-attribute
instance-attribute
Determines the order of identifiers in the identifiers
field of the actor profile
StoredActivity
Bases: Model
cattle_grid generates activities under some circumstances (see FIXME). These will be stored in this table
Source code in cattle_grid/activity_pub/models.py
actor = fields.ForeignKeyField('ap_models.Actor')
class-attribute
instance-attribute
The actor this activity orginates from
data = fields.JSONField()
class-attribute
instance-attribute
The activity
published = fields.DatetimeField()
class-attribute
instance-attribute
When the activity was published