2021-06-17 09:51:11 +02:00
|
|
|
"Represents a schema"
|
2020-11-19 17:06:28 +01:00
|
|
|
schema {
|
|
|
|
query: RootQueryType
|
|
|
|
mutation: RootMutationType
|
|
|
|
subscription: RootSubscriptionType
|
|
|
|
}
|
|
|
|
|
|
|
|
"A JWT and the associated user ID"
|
|
|
|
type Login {
|
|
|
|
"A JWT Token for this session"
|
|
|
|
accessToken: String!
|
|
|
|
|
|
|
|
"A JWT Token to refresh the access token"
|
|
|
|
refreshToken: String!
|
|
|
|
|
|
|
|
"The user associated to this session"
|
|
|
|
user: User!
|
|
|
|
}
|
|
|
|
|
|
|
|
"Instance anonymous participation configuration"
|
|
|
|
type AnonymousParticipation {
|
|
|
|
"Whether anonymous participations are allowed"
|
|
|
|
allowed: Boolean
|
|
|
|
|
|
|
|
"The ways to validate anonymous participations"
|
|
|
|
validation: AnonymousParticipationValidation
|
|
|
|
}
|
|
|
|
|
|
|
|
"Available sort directions"
|
|
|
|
enum SortDirection {
|
|
|
|
"Ascending order"
|
|
|
|
ASC
|
|
|
|
|
|
|
|
"Descending order"
|
|
|
|
DESC
|
|
|
|
}
|
|
|
|
|
|
|
|
"Token"
|
|
|
|
type RefreshedToken {
|
|
|
|
"Generated access token"
|
|
|
|
accessToken: String!
|
|
|
|
|
|
|
|
"Generated refreshed token"
|
|
|
|
refreshToken: String!
|
|
|
|
}
|
|
|
|
|
|
|
|
"Represents an application"
|
2020-12-09 17:55:56 +01:00
|
|
|
type Application implements Actor {
|
2020-11-19 17:06:28 +01:00
|
|
|
"Internal ID for this application"
|
|
|
|
id: ID
|
|
|
|
|
|
|
|
"The ActivityPub actor's URL"
|
|
|
|
url: String
|
|
|
|
|
|
|
|
"The type of Actor (Person, Group,…)"
|
|
|
|
type: ActorType
|
|
|
|
|
|
|
|
"The actor's displayed name"
|
|
|
|
name: String
|
|
|
|
|
|
|
|
"The actor's domain if (null if it's this instance)"
|
|
|
|
domain: String
|
|
|
|
|
|
|
|
"If the actor is from this instance"
|
|
|
|
local: Boolean
|
|
|
|
|
|
|
|
"The actor's summary"
|
|
|
|
summary: String
|
|
|
|
|
|
|
|
"The actor's preferred username"
|
|
|
|
preferredUsername: String
|
|
|
|
|
|
|
|
"Whether the actors manually approves followers"
|
|
|
|
manuallyApprovesFollowers: Boolean
|
|
|
|
|
|
|
|
"If the actor is suspended"
|
|
|
|
suspended: Boolean
|
|
|
|
|
2020-11-27 17:25:41 +01:00
|
|
|
"The actor's avatar media"
|
|
|
|
avatar: Media
|
2020-11-19 17:06:28 +01:00
|
|
|
|
2020-11-27 17:25:41 +01:00
|
|
|
"The actor's banner media"
|
|
|
|
banner: Media
|
2020-11-19 17:06:28 +01:00
|
|
|
|
|
|
|
"Number of followers for this actor"
|
|
|
|
followersCount: Int
|
|
|
|
|
|
|
|
"Number of actors following this actor"
|
|
|
|
followingCount: Int
|
2020-11-27 17:25:41 +01:00
|
|
|
|
|
|
|
"The total size of the media from this actor"
|
|
|
|
mediaSize: Int
|
2020-11-19 17:06:28 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
"Instance anonymous event creation configuration"
|
|
|
|
type AnonymousEventCreation {
|
|
|
|
"Whether anonymous event creation is enabled"
|
|
|
|
allowed: Boolean
|
|
|
|
|
|
|
|
"The methods to validate events created anonymously"
|
|
|
|
validation: AnonymousEventCreationValidation
|
|
|
|
}
|
|
|
|
|
|
|
|
"The list of values the for pending notification settings"
|
|
|
|
enum NotificationPendingEnum {
|
|
|
|
"None. The notification won't be sent."
|
|
|
|
NONE
|
|
|
|
|
|
|
|
"Direct. The notification will be sent right away each time."
|
|
|
|
DIRECT
|
|
|
|
|
|
|
|
"One hour. Notifications will be sent at most each hour"
|
|
|
|
ONE_HOUR
|
|
|
|
|
|
|
|
"One day. Notifications will be sent at most each day"
|
|
|
|
ONE_DAY
|
2021-06-28 14:03:49 +02:00
|
|
|
|
|
|
|
"One Week. Notifications will be sent at most each week"
|
|
|
|
ONE_WEEK
|
2020-11-19 17:06:28 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
"The possible values for a participant role"
|
|
|
|
enum ParticipantRoleEnum {
|
|
|
|
"The participant has not been approved"
|
|
|
|
NOT_APPROVED
|
|
|
|
|
|
|
|
"The participant has not confirmed their participation"
|
|
|
|
NOT_CONFIRMED
|
|
|
|
|
|
|
|
"The participant is a regular participant"
|
|
|
|
PARTICIPANT
|
|
|
|
|
|
|
|
"The participant is an event moderator"
|
|
|
|
MODERATOR
|
|
|
|
|
|
|
|
"The participant is an event administrator"
|
|
|
|
ADMINISTRATOR
|
|
|
|
|
|
|
|
"The participant is an event creator"
|
|
|
|
CREATOR
|
|
|
|
|
|
|
|
"The participant has been rejected from this event"
|
|
|
|
REJECTED
|
|
|
|
}
|
|
|
|
|
2021-06-17 09:51:11 +02:00
|
|
|
"Available event sort fields"
|
|
|
|
enum EventOrderBy {
|
|
|
|
"Sort by the date the event starts"
|
|
|
|
BEGINS_ON
|
|
|
|
|
|
|
|
"Sort by the date the event was created"
|
|
|
|
INSERTED_AT
|
|
|
|
|
|
|
|
"Sort by the date the event was updated"
|
|
|
|
UPDATED_AT
|
|
|
|
}
|
|
|
|
|
2020-11-19 17:06:28 +01:00
|
|
|
"A config object"
|
|
|
|
type Config {
|
|
|
|
"The instance's name"
|
|
|
|
name: String
|
|
|
|
|
|
|
|
"The instance's short description"
|
|
|
|
description: String
|
|
|
|
|
|
|
|
"The instance's long description"
|
|
|
|
longDescription: String
|
|
|
|
|
|
|
|
"The instance's slogan"
|
|
|
|
slogan: String
|
|
|
|
|
|
|
|
"The instance's contact details"
|
|
|
|
contact: String
|
|
|
|
|
|
|
|
"The instance's admins languages"
|
|
|
|
languages: [String]
|
|
|
|
|
2022-04-18 16:16:56 +02:00
|
|
|
"The instance list of event categories possibilities"
|
|
|
|
eventCategories: [EventCategoryOption]
|
|
|
|
|
2020-11-19 17:06:28 +01:00
|
|
|
"Whether the registrations are opened"
|
|
|
|
registrationsOpen: Boolean
|
|
|
|
|
|
|
|
"Whether the registration are on an allowlist"
|
|
|
|
registrationsAllowlist: Boolean
|
|
|
|
|
|
|
|
"Whether the demo mode is enabled"
|
|
|
|
demoMode: Boolean
|
|
|
|
|
|
|
|
"The country code from the IP"
|
|
|
|
countryCode: String
|
|
|
|
|
|
|
|
"The IP's location"
|
|
|
|
location: Lonlat
|
|
|
|
|
|
|
|
"The instance's geocoding settings"
|
|
|
|
geocoding: Geocoding
|
|
|
|
|
|
|
|
"The instance's maps settings"
|
|
|
|
maps: Maps
|
|
|
|
|
|
|
|
"The instance's anonymous action settings"
|
|
|
|
anonymous: Anonymous
|
|
|
|
|
|
|
|
"The instance's enabled resource providers"
|
|
|
|
resourceProviders: [ResourceProvider]
|
|
|
|
|
2021-06-17 09:51:11 +02:00
|
|
|
"The configuration for upload limits"
|
|
|
|
uploadLimits: UploadLimits
|
|
|
|
|
2020-11-19 17:06:28 +01:00
|
|
|
"The instance's available timezones"
|
|
|
|
timezones: [String]
|
|
|
|
|
|
|
|
"The instance's features"
|
|
|
|
features: Features
|
|
|
|
|
2021-12-28 11:42:08 +01:00
|
|
|
"The instance's restrictions"
|
|
|
|
restrictions: Restrictions
|
|
|
|
|
2020-11-19 17:06:28 +01:00
|
|
|
"The instance's version"
|
|
|
|
version: String
|
|
|
|
|
|
|
|
"Whether this instance is federation"
|
|
|
|
federating: Boolean
|
|
|
|
|
|
|
|
"The instance's terms"
|
|
|
|
terms(
|
|
|
|
"The user's locale. The terms will be translated in their language, if available."
|
|
|
|
locale: String
|
|
|
|
): Terms
|
|
|
|
|
|
|
|
"The instance's privacy policy"
|
|
|
|
privacy(
|
|
|
|
"The user's locale. The privacy policy will be translated in their language, if available."
|
|
|
|
locale: String
|
|
|
|
): Privacy
|
|
|
|
|
|
|
|
"The instance's rules"
|
|
|
|
rules: String
|
|
|
|
|
|
|
|
"The instance auth methods"
|
|
|
|
auth: Auth
|
2021-06-17 09:51:11 +02:00
|
|
|
|
|
|
|
"The instance's feed settings"
|
|
|
|
instanceFeeds: InstanceFeeds
|
|
|
|
|
|
|
|
"Web Push settings for the instance"
|
|
|
|
webPush: WebPush
|
2021-12-28 11:42:08 +01:00
|
|
|
|
|
|
|
"The instance list of export formats"
|
|
|
|
exportFormats: ExportFormats
|
2022-04-18 16:16:56 +02:00
|
|
|
|
|
|
|
"Configuration for diverse analytics services"
|
|
|
|
analytics: [Analytics]
|
2020-11-19 17:06:28 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
"A tag"
|
|
|
|
type Tag {
|
|
|
|
"The tag's ID"
|
|
|
|
id: ID
|
|
|
|
|
|
|
|
"The tags's slug"
|
|
|
|
slug: String
|
|
|
|
|
|
|
|
"The tag's title"
|
|
|
|
title: String
|
|
|
|
|
|
|
|
"Related tags to this tag"
|
|
|
|
related: [Tag]
|
|
|
|
}
|
|
|
|
|
2020-12-17 11:26:25 +01:00
|
|
|
"Instance map routing configuration"
|
|
|
|
type Routing {
|
|
|
|
"The instance's routing type"
|
|
|
|
type: RoutingType
|
|
|
|
}
|
|
|
|
|
2020-11-19 17:06:28 +01:00
|
|
|
"Language information"
|
|
|
|
type Language {
|
|
|
|
"The iso-639-3 language code"
|
|
|
|
code: String
|
|
|
|
|
|
|
|
"The language name"
|
|
|
|
name: String
|
|
|
|
}
|
|
|
|
|
|
|
|
"The list of roles an user can have"
|
|
|
|
enum UserRole {
|
|
|
|
"Administrator role"
|
|
|
|
ADMINISTRATOR
|
|
|
|
|
|
|
|
"Moderator role"
|
|
|
|
MODERATOR
|
|
|
|
|
|
|
|
"User role"
|
|
|
|
USER
|
|
|
|
}
|
|
|
|
|
2021-06-17 09:51:11 +02:00
|
|
|
"""
|
|
|
|
A list of possible values for the type option to search an address.
|
|
|
|
|
|
|
|
Results may vary depending on the geocoding provider.
|
|
|
|
"""
|
|
|
|
enum AddressSearchType {
|
|
|
|
"Administrative results (cities, regions,...)"
|
|
|
|
ADMINISTRATIVE
|
|
|
|
}
|
|
|
|
|
2020-11-19 17:06:28 +01:00
|
|
|
"A todo list"
|
|
|
|
type TodoList {
|
|
|
|
"The todo list's ID"
|
|
|
|
id: ID
|
|
|
|
|
|
|
|
"The todo list's title"
|
|
|
|
title: String
|
|
|
|
|
|
|
|
"The actor that owns this todo list"
|
|
|
|
actor: Actor
|
|
|
|
|
|
|
|
"The todo-list's todos"
|
2021-12-28 11:42:08 +01:00
|
|
|
todos(
|
|
|
|
"The page in the paginated todos list"
|
|
|
|
page: Int
|
|
|
|
|
|
|
|
"The limit of todos per page"
|
|
|
|
limit: Int
|
|
|
|
): PaginatedTodoList
|
2020-11-19 17:06:28 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
"Represents a participant to an event"
|
|
|
|
type Participant {
|
|
|
|
"The participation ID"
|
|
|
|
id: ID
|
|
|
|
|
|
|
|
"The event which the actor participates in"
|
|
|
|
event: Event
|
|
|
|
|
|
|
|
"The actor that participates to the event"
|
|
|
|
actor: Actor
|
|
|
|
|
|
|
|
"The role of this actor at this event"
|
|
|
|
role: ParticipantRoleEnum
|
|
|
|
|
|
|
|
"The metadata associated to this participant"
|
|
|
|
metadata: ParticipantMetadata
|
|
|
|
|
|
|
|
"The datetime this participant was created"
|
|
|
|
insertedAt: DateTime
|
|
|
|
}
|
|
|
|
|
|
|
|
"The list of sortable fields for an user list"
|
|
|
|
enum SortableUserField {
|
|
|
|
"The user's ID"
|
|
|
|
ID
|
|
|
|
}
|
|
|
|
|
2021-06-17 09:51:11 +02:00
|
|
|
interface ActivityObject {
|
|
|
|
id: ID
|
|
|
|
}
|
|
|
|
|
|
|
|
"A paginated list of activity items"
|
|
|
|
type PaginatedActivityList {
|
|
|
|
"A list of activities"
|
|
|
|
elements: [Activity]
|
|
|
|
|
|
|
|
"The total number of elements in the list"
|
|
|
|
total: Int
|
|
|
|
}
|
|
|
|
|
2020-11-19 17:06:28 +01:00
|
|
|
"""
|
|
|
|
The `UUID` scalar type represents UUID4 compliant string data, represented as UTF-8
|
|
|
|
character sequences. The UUID4 type is most often used to represent unique
|
|
|
|
human-readable ID strings.
|
|
|
|
"""
|
|
|
|
scalar UUID
|
|
|
|
|
2022-04-18 16:16:56 +02:00
|
|
|
"A paginated list of instances"
|
|
|
|
type PaginatedInstanceList {
|
|
|
|
"A list of instances"
|
|
|
|
elements: [Instance]
|
|
|
|
|
|
|
|
"The total number of instances in the list"
|
|
|
|
total: Int
|
|
|
|
}
|
|
|
|
|
2020-11-19 17:06:28 +01:00
|
|
|
"A paginated list of discussions"
|
|
|
|
type PaginatedDiscussionList {
|
|
|
|
"A list of discussion"
|
|
|
|
elements: [Discussion]
|
|
|
|
|
|
|
|
"The total number of discussions in the list"
|
|
|
|
total: Int
|
|
|
|
}
|
|
|
|
|
2021-06-17 09:51:11 +02:00
|
|
|
"The set of parameters needed to input a location"
|
|
|
|
input LocationInput {
|
|
|
|
"The range in kilometers the user wants to see events"
|
|
|
|
range: Int
|
|
|
|
|
|
|
|
"A geohash representing the user's preferred location"
|
|
|
|
geohash: String
|
|
|
|
|
|
|
|
"A string describing the user's preferred location"
|
|
|
|
name: String
|
|
|
|
}
|
|
|
|
|
2020-11-19 17:06:28 +01:00
|
|
|
"The objects that can be in an action log"
|
|
|
|
interface ActionLogObject {
|
|
|
|
"Internal ID for this object"
|
|
|
|
id: ID
|
|
|
|
}
|
|
|
|
|
|
|
|
"Represents an uploaded file."
|
|
|
|
scalar Upload
|
|
|
|
|
|
|
|
"A paginated list of posts"
|
|
|
|
type PaginatedPostList {
|
|
|
|
"A list of posts"
|
|
|
|
elements: [Post]
|
|
|
|
|
|
|
|
"The total number of posts in the list"
|
|
|
|
total: Int
|
|
|
|
}
|
|
|
|
|
|
|
|
"A comment"
|
2021-06-17 09:51:11 +02:00
|
|
|
type Comment implements ActivityObject & ActionLogObject {
|
2020-11-19 17:06:28 +01:00
|
|
|
"Internal ID for this comment"
|
|
|
|
id: ID
|
|
|
|
|
|
|
|
"An UUID for this comment"
|
|
|
|
uuid: UUID
|
|
|
|
|
|
|
|
"Comment URL"
|
|
|
|
url: String
|
|
|
|
|
|
|
|
"Whether this comment is local or not"
|
|
|
|
local: Boolean
|
|
|
|
|
|
|
|
"The visibility for the comment"
|
|
|
|
visibility: CommentVisibility
|
|
|
|
|
|
|
|
"The comment body"
|
|
|
|
text: String
|
|
|
|
|
|
|
|
"The comment's primary language"
|
|
|
|
primaryLanguage: String
|
|
|
|
|
|
|
|
"A list of replies to the comment"
|
|
|
|
replies: [Comment]
|
|
|
|
|
|
|
|
"The number of total known replies to this comment"
|
|
|
|
totalReplies: Int
|
|
|
|
|
|
|
|
"The comment this comment directly replies to"
|
|
|
|
inReplyToComment: Comment
|
|
|
|
|
|
|
|
"The eventual event this comment is under"
|
|
|
|
event: Event
|
|
|
|
|
|
|
|
"The original comment that started the thread this comment is in"
|
|
|
|
originComment: Comment
|
|
|
|
|
|
|
|
"The thread languages"
|
|
|
|
threadLanguages: [String]!
|
|
|
|
|
|
|
|
"The comment's author"
|
|
|
|
actor: Person
|
|
|
|
|
|
|
|
"When was the comment inserted in database"
|
|
|
|
insertedAt: DateTime
|
|
|
|
|
|
|
|
"When was the comment updated"
|
|
|
|
updatedAt: DateTime
|
|
|
|
|
|
|
|
"When was the comment deleted"
|
|
|
|
deletedAt: DateTime
|
|
|
|
|
|
|
|
"When was the comment published"
|
|
|
|
publishedAt: DateTime
|
2021-06-17 09:51:11 +02:00
|
|
|
|
|
|
|
"Whether this comment needs to be announced to participants"
|
|
|
|
isAnnouncement: Boolean!
|
2021-10-04 18:59:41 +02:00
|
|
|
|
|
|
|
"The comment language"
|
2021-12-28 11:42:08 +01:00
|
|
|
language: String
|
2020-11-19 17:06:28 +01:00
|
|
|
}
|
|
|
|
|
2020-11-27 17:25:41 +01:00
|
|
|
"An attached media or a link to a media"
|
|
|
|
input MediaInput {
|
|
|
|
"A full media attached"
|
|
|
|
media: MediaInputObject
|
2020-11-19 17:06:28 +01:00
|
|
|
|
2020-11-27 17:25:41 +01:00
|
|
|
"The ID of an existing media"
|
|
|
|
mediaId: ID
|
2020-11-19 17:06:28 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
"Instance anonymous reports"
|
|
|
|
type AnonymousReports {
|
|
|
|
"Whether anonymous reports are allowed"
|
|
|
|
allowed: Boolean
|
|
|
|
}
|
|
|
|
|
|
|
|
"Search events result"
|
|
|
|
type Events {
|
|
|
|
"Total elements"
|
|
|
|
total: Int!
|
|
|
|
|
|
|
|
"Event elements"
|
|
|
|
elements: [Event]!
|
|
|
|
}
|
|
|
|
|
|
|
|
"Instance maps configuration"
|
|
|
|
type Maps {
|
|
|
|
"The instance's maps tiles configuration"
|
|
|
|
tiles: Tiles
|
2020-12-17 11:26:25 +01:00
|
|
|
|
|
|
|
"The instance's maps routing configuration"
|
|
|
|
routing: Routing
|
2020-11-19 17:06:28 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
"Search groups result"
|
|
|
|
type Groups {
|
|
|
|
"Total elements"
|
|
|
|
total: Int!
|
|
|
|
|
|
|
|
"Group elements"
|
|
|
|
elements: [Group]!
|
|
|
|
}
|
|
|
|
|
|
|
|
"The list of possible statuses for a report object"
|
|
|
|
enum ReportStatus {
|
|
|
|
"The report has been opened"
|
|
|
|
OPEN
|
|
|
|
|
|
|
|
"The report has been closed"
|
|
|
|
CLOSED
|
|
|
|
|
|
|
|
"The report has been marked as resolved"
|
|
|
|
RESOLVED
|
|
|
|
}
|
|
|
|
|
2021-06-17 09:51:11 +02:00
|
|
|
enum ActivityAuthor {
|
|
|
|
"Activities created by the current actor"
|
|
|
|
SELF
|
|
|
|
|
|
|
|
"Activities created by others"
|
|
|
|
BY
|
|
|
|
}
|
|
|
|
|
2020-11-19 17:06:28 +01:00
|
|
|
"The metadata associated to the resource"
|
|
|
|
type ResourceMetadata {
|
|
|
|
"The type of the resource"
|
|
|
|
type: String
|
|
|
|
|
|
|
|
"The resource's metadata title"
|
|
|
|
title: String
|
|
|
|
|
|
|
|
"The resource's metadata description"
|
|
|
|
description: String
|
|
|
|
|
|
|
|
"The resource's metadata image"
|
|
|
|
imageRemoteUrl: String
|
|
|
|
|
|
|
|
"The resource's metadata image width"
|
|
|
|
width: Int
|
|
|
|
|
|
|
|
"The resource's metadata image height"
|
|
|
|
height: Int
|
|
|
|
|
|
|
|
"The resource's author name"
|
|
|
|
authorName: String
|
|
|
|
|
|
|
|
"The resource's author URL"
|
|
|
|
authorUrl: String
|
|
|
|
|
|
|
|
"The resource's provider name"
|
|
|
|
providerName: String
|
|
|
|
|
|
|
|
"The resource's provider URL"
|
|
|
|
providerUrl: String
|
|
|
|
|
|
|
|
"The resource's author name"
|
|
|
|
html: String
|
|
|
|
|
|
|
|
"The resource's favicon URL"
|
|
|
|
faviconUrl: String
|
|
|
|
}
|
|
|
|
|
|
|
|
"Metadata about a participant"
|
|
|
|
type ParticipantMetadata {
|
|
|
|
"The eventual token to leave an event when user is anonymous"
|
|
|
|
cancellationToken: String
|
|
|
|
|
|
|
|
"The eventual message the participant left"
|
|
|
|
message: String
|
|
|
|
|
|
|
|
"The participant's locale"
|
|
|
|
locale: String
|
|
|
|
}
|
|
|
|
|
2020-11-27 17:25:41 +01:00
|
|
|
"A media"
|
|
|
|
type Media {
|
|
|
|
"The media's ID"
|
|
|
|
id: ID
|
|
|
|
|
|
|
|
"The media's alternative text"
|
|
|
|
alt: String
|
|
|
|
|
|
|
|
"The media's name"
|
|
|
|
name: String
|
|
|
|
|
|
|
|
"The media's full URL"
|
|
|
|
url: String
|
|
|
|
|
|
|
|
"The media's detected content type"
|
|
|
|
contentType: String
|
|
|
|
|
|
|
|
"The media's size"
|
|
|
|
size: Int
|
2021-06-17 09:51:11 +02:00
|
|
|
|
|
|
|
"The media's metadata"
|
|
|
|
metadata: MediaMetadata
|
2020-11-27 17:25:41 +01:00
|
|
|
}
|
|
|
|
|
2020-11-19 17:06:28 +01:00
|
|
|
"Instance anonymous participation with validation by captcha configuration"
|
|
|
|
type AnonymousParticipationValidationCaptcha {
|
|
|
|
"Whether anonymous participation validation by captcha is enabled"
|
|
|
|
enabled: Boolean
|
|
|
|
}
|
|
|
|
|
|
|
|
"Instance anonymous event creation captcha validation configuration"
|
|
|
|
type AnonymousEventCreationValidationCaptcha {
|
|
|
|
"Whether anonymous event creation with validation by captcha is enabled"
|
|
|
|
enabled: Boolean
|
|
|
|
}
|
|
|
|
|
|
|
|
"A todo"
|
|
|
|
type Todo {
|
|
|
|
"The todo's ID"
|
|
|
|
id: ID
|
|
|
|
|
|
|
|
"The todo's title"
|
|
|
|
title: String
|
|
|
|
|
|
|
|
"The todo's status"
|
|
|
|
status: Boolean
|
|
|
|
|
|
|
|
"The todo's due date"
|
|
|
|
dueDate: DateTime
|
|
|
|
|
|
|
|
"The todo's creator"
|
|
|
|
creator: Actor
|
|
|
|
|
|
|
|
"The todo list this todo is attached to"
|
|
|
|
todoList: TodoList
|
|
|
|
|
|
|
|
"The todos's assigned person"
|
|
|
|
assignedTo: Actor
|
|
|
|
}
|
|
|
|
|
|
|
|
"Root subscription"
|
|
|
|
type RootSubscriptionType {
|
|
|
|
"Notify when a person's participation's status changed for an event"
|
2021-06-17 09:51:11 +02:00
|
|
|
eventPersonParticipationChanged(
|
|
|
|
"The person's ID"
|
|
|
|
personId: ID!
|
|
|
|
): Person
|
2020-11-19 17:06:28 +01:00
|
|
|
|
|
|
|
"Notify when a person's membership's status changed for a group"
|
2021-06-17 09:51:11 +02:00
|
|
|
groupMembershipChanged(
|
|
|
|
"The person's ID"
|
|
|
|
personId: ID!
|
|
|
|
|
|
|
|
"The group's federated username"
|
|
|
|
group: String!
|
|
|
|
): Person
|
2020-11-19 17:06:28 +01:00
|
|
|
|
|
|
|
"Notify when a discussion changed"
|
2021-06-17 09:51:11 +02:00
|
|
|
discussionCommentChanged(
|
|
|
|
"The discussion's slug"
|
|
|
|
slug: String!
|
|
|
|
): Discussion
|
2020-11-19 17:06:28 +01:00
|
|
|
}
|
|
|
|
|
2022-04-18 16:16:56 +02:00
|
|
|
"Event categories list configuration"
|
|
|
|
type EventCategoryOption {
|
|
|
|
"The ID of the event category"
|
|
|
|
id: String
|
|
|
|
|
|
|
|
"The translated name of the event category"
|
|
|
|
label: String
|
|
|
|
}
|
|
|
|
|
|
|
|
type AnalyticsConfiguration {
|
|
|
|
"The key for the analytics configuration element"
|
|
|
|
key: String
|
|
|
|
|
|
|
|
"The value for the analytics configuration element"
|
|
|
|
value: String
|
|
|
|
|
|
|
|
"The analytics configuration type"
|
|
|
|
type: AnalyticsConfigurationType
|
|
|
|
}
|
|
|
|
|
2020-11-19 17:06:28 +01:00
|
|
|
"Represents a deleted feed_token"
|
|
|
|
type DeletedFeedToken {
|
|
|
|
"The user that owned the deleted feed token"
|
|
|
|
user: DeletedObject
|
|
|
|
|
|
|
|
"The actor that owned the deleted feed token"
|
|
|
|
actor: DeletedObject
|
|
|
|
}
|
|
|
|
|
|
|
|
"Instance anonymous participation validation configuration"
|
|
|
|
type AnonymousParticipationValidation {
|
|
|
|
"The policy to validate anonymous participations by email"
|
|
|
|
email: AnonymousParticipationValidationEmail
|
|
|
|
|
|
|
|
"The policy to validate anonymous participations by captcha"
|
|
|
|
captcha: AnonymousParticipationValidationCaptcha
|
|
|
|
}
|
|
|
|
|
2021-06-17 09:51:11 +02:00
|
|
|
type Location {
|
|
|
|
"The range in kilometers the user wants to see events"
|
|
|
|
range: Int
|
|
|
|
|
|
|
|
"A geohash representing the user's preferred location"
|
|
|
|
geohash: String
|
|
|
|
|
|
|
|
"A string describing the user's preferred location"
|
|
|
|
name: String
|
|
|
|
}
|
|
|
|
|
2021-10-04 18:59:41 +02:00
|
|
|
enum ExportFormatEnum {
|
|
|
|
"CSV format"
|
|
|
|
CSV
|
|
|
|
|
|
|
|
"PDF format"
|
|
|
|
PDF
|
2021-12-28 11:42:08 +01:00
|
|
|
|
|
|
|
"ODS format"
|
|
|
|
ODS
|
2021-10-04 18:59:41 +02:00
|
|
|
}
|
|
|
|
|
2020-11-19 17:06:28 +01:00
|
|
|
"The list of visibility options for a comment"
|
|
|
|
enum CommentVisibility {
|
|
|
|
"Publicly listed and federated. Can be shared."
|
|
|
|
PUBLIC
|
|
|
|
|
|
|
|
"Visible only to people with the link - or invited"
|
|
|
|
UNLISTED
|
|
|
|
|
|
|
|
"Visible only to people members of the group or followers of the person"
|
|
|
|
PRIVATE
|
|
|
|
|
|
|
|
"Visible only after a moderator accepted"
|
|
|
|
MODERATED
|
|
|
|
|
|
|
|
"visible only to people invited"
|
|
|
|
INVITE
|
|
|
|
}
|
|
|
|
|
|
|
|
"The list of visibility options for an event"
|
|
|
|
enum EventVisibility {
|
|
|
|
"Publicly listed and federated. Can be shared."
|
|
|
|
PUBLIC
|
|
|
|
|
|
|
|
"Visible only to people with the link - or invited"
|
|
|
|
UNLISTED
|
|
|
|
|
|
|
|
"Visible only after a moderator accepted"
|
|
|
|
RESTRICTED
|
|
|
|
|
|
|
|
"Visible only to people members of the group or followers of the person"
|
|
|
|
PRIVATE
|
|
|
|
}
|
|
|
|
|
|
|
|
"The instance's auth configuration"
|
|
|
|
type Auth {
|
|
|
|
"Whether or not LDAP auth is enabled"
|
|
|
|
ldap: Boolean
|
|
|
|
|
|
|
|
"List of oauth providers"
|
|
|
|
oauthProviders: [OauthProvider]
|
|
|
|
}
|
|
|
|
|
|
|
|
"An action log"
|
|
|
|
type ActionLog {
|
|
|
|
"Internal ID for this comment"
|
|
|
|
id: ID
|
|
|
|
|
|
|
|
"The actor that acted"
|
|
|
|
actor: Actor
|
|
|
|
|
|
|
|
"The object that was acted upon"
|
|
|
|
object: ActionLogObject
|
|
|
|
|
|
|
|
"The action that was done"
|
|
|
|
action: ActionLogAction
|
|
|
|
|
|
|
|
"The time when the action was performed"
|
|
|
|
insertedAt: DateTime
|
|
|
|
}
|
|
|
|
|
|
|
|
"The acceptable values for the instance's terms type"
|
|
|
|
enum InstanceTermsType {
|
|
|
|
"An URL. Users will be redirected to this URL."
|
|
|
|
URL
|
|
|
|
|
|
|
|
"Terms will be set to Mobilizon's default terms"
|
|
|
|
DEFAULT
|
|
|
|
|
|
|
|
"Custom terms text"
|
|
|
|
CUSTOM
|
|
|
|
}
|
|
|
|
|
|
|
|
"A entity that can be interacted with from a remote instance"
|
|
|
|
interface Interactable {
|
|
|
|
"A public URL for the entity"
|
|
|
|
url: String
|
|
|
|
}
|
|
|
|
|
2021-12-28 11:42:08 +01:00
|
|
|
enum EventType {
|
|
|
|
"The event will happen in person. It can also be livestreamed, but has a physical address"
|
|
|
|
IN_PERSON
|
|
|
|
|
|
|
|
"The event will only happen online. It has no physical address"
|
|
|
|
ONLINE
|
|
|
|
}
|
|
|
|
|
2021-10-04 18:59:41 +02:00
|
|
|
enum EventMetadataType {
|
|
|
|
"A string"
|
|
|
|
STRING
|
|
|
|
|
|
|
|
"An integer"
|
|
|
|
INTEGER
|
|
|
|
|
|
|
|
"A boolean"
|
|
|
|
BOOLEAN
|
|
|
|
}
|
|
|
|
|
2020-12-17 11:26:25 +01:00
|
|
|
enum RoutingType {
|
|
|
|
"Redirect to openstreetmap.org's direction endpoint"
|
|
|
|
OPENSTREETMAP
|
|
|
|
|
|
|
|
"Redirect to Google Maps's direction endpoint"
|
|
|
|
GOOGLE_MAPS
|
|
|
|
}
|
|
|
|
|
2020-11-19 17:06:28 +01:00
|
|
|
"A struct containing the id of the deleted object"
|
|
|
|
type DeletedObject {
|
|
|
|
id: ID
|
|
|
|
}
|
|
|
|
|
2021-12-28 11:42:08 +01:00
|
|
|
"A follow group event"
|
|
|
|
type FollowedGroupEvent {
|
|
|
|
user: User
|
|
|
|
profile: Person
|
|
|
|
group: Group
|
|
|
|
event: Event
|
|
|
|
}
|
|
|
|
|
2020-11-19 17:06:28 +01:00
|
|
|
"A paginated list of comments"
|
|
|
|
type PaginatedCommentList {
|
|
|
|
"A list of comments"
|
|
|
|
elements: [Comment]
|
|
|
|
|
|
|
|
"The total number of comments in the list"
|
|
|
|
total: Int
|
|
|
|
}
|
|
|
|
|
|
|
|
"A paginated list of members"
|
|
|
|
type PaginatedMemberList {
|
|
|
|
"A list of members"
|
|
|
|
elements: [Member]
|
|
|
|
|
|
|
|
"The total number of elements in the list"
|
|
|
|
total: Int
|
|
|
|
}
|
|
|
|
|
|
|
|
"A post"
|
2021-06-17 09:51:11 +02:00
|
|
|
type Post implements ActivityObject {
|
2020-11-19 17:06:28 +01:00
|
|
|
"The post's ID"
|
|
|
|
id: ID
|
|
|
|
|
|
|
|
"The post's title"
|
|
|
|
title: String
|
|
|
|
|
|
|
|
"The post's slug"
|
|
|
|
slug: String
|
|
|
|
|
|
|
|
"The post's body, as HTML"
|
|
|
|
body: String
|
|
|
|
|
|
|
|
"The post's URL"
|
|
|
|
url: String
|
|
|
|
|
|
|
|
"Whether the post is a draft"
|
|
|
|
draft: Boolean
|
|
|
|
|
|
|
|
"The post's author"
|
|
|
|
author: Actor
|
|
|
|
|
|
|
|
"The post's group"
|
|
|
|
attributedTo: Actor
|
|
|
|
|
|
|
|
"The post's visibility"
|
|
|
|
visibility: PostVisibility
|
|
|
|
|
|
|
|
"When the post was published"
|
|
|
|
publishAt: DateTime
|
|
|
|
|
|
|
|
"The post's creation date"
|
|
|
|
insertedAt: DateTime
|
|
|
|
|
|
|
|
"The post's last update date"
|
|
|
|
updatedAt: DateTime
|
|
|
|
|
2021-10-04 18:59:41 +02:00
|
|
|
"The post language"
|
2021-12-28 11:42:08 +01:00
|
|
|
language: String
|
2021-10-04 18:59:41 +02:00
|
|
|
|
2020-11-19 17:06:28 +01:00
|
|
|
"The post's tags"
|
|
|
|
tags: [Tag]
|
|
|
|
|
2020-11-27 17:25:41 +01:00
|
|
|
"The posts's media"
|
|
|
|
picture: Media
|
2020-11-19 17:06:28 +01:00
|
|
|
}
|
|
|
|
|
2021-06-17 09:51:11 +02:00
|
|
|
"A paginated list of action logs"
|
|
|
|
type PaginatedActionLogList {
|
|
|
|
"A list of action logs"
|
|
|
|
elements: [ActionLog]
|
|
|
|
|
|
|
|
"The total number of action logs in the list"
|
|
|
|
total: Int
|
|
|
|
}
|
|
|
|
|
2020-11-19 17:06:28 +01:00
|
|
|
"A paginated list of events"
|
|
|
|
type PaginatedEventList {
|
|
|
|
"A list of events"
|
|
|
|
elements: [Event]
|
|
|
|
|
|
|
|
"The total number of events in the list"
|
|
|
|
total: Int
|
|
|
|
}
|
|
|
|
|
|
|
|
"Represents a deleted participant"
|
|
|
|
type DeletedParticipant {
|
|
|
|
"The participant ID"
|
|
|
|
id: ID
|
|
|
|
|
|
|
|
"The participant's event"
|
|
|
|
event: DeletedObject
|
|
|
|
|
|
|
|
"The participant's actor"
|
|
|
|
actor: DeletedObject
|
|
|
|
}
|
|
|
|
|
|
|
|
"A paginated list of follower objects"
|
|
|
|
type PaginatedFollowerList {
|
|
|
|
"A list of followers"
|
|
|
|
elements: [Follower]
|
|
|
|
|
|
|
|
"The total number of elements in the list"
|
|
|
|
total: Int
|
|
|
|
}
|
|
|
|
|
2022-04-18 16:16:56 +02:00
|
|
|
type Analytics {
|
|
|
|
"ID of the analytics service"
|
|
|
|
id: String
|
|
|
|
|
|
|
|
"Whether the service is activated or not"
|
|
|
|
enabled: Boolean
|
|
|
|
|
|
|
|
"A list of key-values configuration"
|
|
|
|
configuration: [AnalyticsConfiguration]
|
|
|
|
}
|
|
|
|
|
|
|
|
enum InstancesSortFields {
|
|
|
|
EVENT_COUNT
|
|
|
|
PERSON_COUNT
|
|
|
|
GROUP_COUNT
|
|
|
|
FOLLOWERS_COUNT
|
|
|
|
FOLLOWINGS_COUNT
|
|
|
|
REPORTS_COUNT
|
|
|
|
MEDIA_SIZE
|
|
|
|
}
|
|
|
|
|
2020-11-19 17:06:28 +01:00
|
|
|
"The list of possible options for the event's status"
|
|
|
|
enum EventStatus {
|
|
|
|
"The event is tentative"
|
|
|
|
TENTATIVE
|
|
|
|
|
|
|
|
"The event is confirmed"
|
|
|
|
CONFIRMED
|
|
|
|
|
|
|
|
"The event is cancelled"
|
|
|
|
CANCELLED
|
|
|
|
}
|
|
|
|
|
|
|
|
"A statistics object"
|
|
|
|
type Statistics {
|
|
|
|
"The number of local users"
|
|
|
|
numberOfUsers: Int
|
|
|
|
|
|
|
|
"The total number of events"
|
|
|
|
numberOfEvents: Int
|
|
|
|
|
|
|
|
"The number of local events"
|
|
|
|
numberOfLocalEvents: Int
|
|
|
|
|
|
|
|
"The total number of comments"
|
|
|
|
numberOfComments: Int
|
|
|
|
|
|
|
|
"The number of local events"
|
|
|
|
numberOfLocalComments: Int
|
|
|
|
|
|
|
|
"The total number of groups"
|
|
|
|
numberOfGroups: Int
|
|
|
|
|
|
|
|
"The number of local groups"
|
|
|
|
numberOfLocalGroups: Int
|
|
|
|
|
|
|
|
"The number of this instance's followers"
|
|
|
|
numberOfInstanceFollowers: Int
|
|
|
|
|
|
|
|
"The number of instances this instance follows"
|
|
|
|
numberOfInstanceFollowings: Int
|
|
|
|
}
|
|
|
|
|
2021-12-28 11:42:08 +01:00
|
|
|
"Export formats configuration"
|
|
|
|
type ExportFormats {
|
|
|
|
"The list of formats the event participants can be exported to"
|
|
|
|
eventParticipants: [String]
|
|
|
|
}
|
|
|
|
|
2020-11-19 17:06:28 +01:00
|
|
|
"Search persons result"
|
|
|
|
type Persons {
|
|
|
|
"Total elements"
|
|
|
|
total: Int!
|
|
|
|
|
|
|
|
"Person elements"
|
|
|
|
elements: [Person]!
|
|
|
|
}
|
|
|
|
|
|
|
|
"An oAuth Provider"
|
|
|
|
type OauthProvider {
|
|
|
|
"The provider ID"
|
|
|
|
id: String
|
|
|
|
|
|
|
|
"The label for the auth provider"
|
|
|
|
label: String
|
|
|
|
}
|
|
|
|
|
|
|
|
"An ActivityPub actor"
|
|
|
|
interface Actor {
|
|
|
|
"Internal ID for this actor"
|
|
|
|
id: ID
|
|
|
|
|
|
|
|
"The ActivityPub actor's URL"
|
|
|
|
url: String
|
|
|
|
|
|
|
|
"The type of Actor (Person, Group,…)"
|
|
|
|
type: ActorType
|
|
|
|
|
|
|
|
"The actor's displayed name"
|
|
|
|
name: String
|
|
|
|
|
|
|
|
"The actor's domain if (null if it's this instance)"
|
|
|
|
domain: String
|
|
|
|
|
|
|
|
"If the actor is from this instance"
|
|
|
|
local: Boolean
|
|
|
|
|
|
|
|
"The actor's summary"
|
|
|
|
summary: String
|
|
|
|
|
|
|
|
"The actor's preferred username"
|
|
|
|
preferredUsername: String
|
|
|
|
|
|
|
|
"Whether the actors manually approves followers"
|
|
|
|
manuallyApprovesFollowers: Boolean
|
|
|
|
|
|
|
|
"If the actor is suspended"
|
|
|
|
suspended: Boolean
|
|
|
|
|
2020-11-27 17:25:41 +01:00
|
|
|
"The actor's avatar media"
|
|
|
|
avatar: Media
|
2020-11-19 17:06:28 +01:00
|
|
|
|
|