Skip to main content

User-related API environment

Pre-live user-related API docs

These pages describe the Pre-live user-related API stack.

Use pre-live OAuth credentials, pre-live API base URLs, and pre-live app URLs when following this documentation. Keep your OAuth flow, API requests, callback URLs, and manual testing within the pre-live environment.

Create post​

Create a new post (reflection) with Quran references. Posts can be public, drafts, or associated with a room (group/page). Supports user mentions and multiple Quran verse references. Minimum body length is 6 characters.

Request Body required

Post creation payload containing the post object with body, references, mentions, and visibility settings

    post object required
    postAsAuthorId uuid
    roomPostStatus number required

    Possible values: [0, 1, 2]

    The room post status, defaults to publicly: 1. As Room: 0, Publicly: 1, Only Members: 2

    media object[]

    Possible values: <= 10

    QDC recipe media attachments. Each item requires an id, provider=qdc, image/video type, recipe, and preview. Invalid recipes and duplicate verse ranges are rejected.

    body string required

    Possible values: >= 6 characters

    draft boolean required
    tags string[]

    Possible values: Value must match regular expression TAGS_PATTERN

    references object[] required
  • Array [
  • chapterId number required

    Possible values: >= 1

    from number required

    Default value: 0

    to number required

    Default value: 0

  • ]
  • mentions object[] required
  • Array [
  • userId uuid required
    marker string required

    Possible values: Value must match regular expression /{{[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}}}/

    displayName string required
  • ]
  • roomId number required
    sourcePostId number

    Possible values: >= 1

    publishedAt date-time required
Responses

Post created successfully


Schema
    data object required
    sourcePostId number
    sourcePost circular(PostSerialized)
    hasSourcePost boolean
    isSourcePostVisible boolean
    reReflectsCount number
    reactionSummary object
    total number required

    Total reactions represented in counts.

    counts object[] required

    Nonzero counts ordered by descending count, then reaction identifier.

  • Array [
  • reactionType string required
    count number required

    Number of non-banned reactors using this type.

  • ]
  • currentUserReaction string nullable required

    The authenticated viewer’s reaction, or null for no reaction or an anonymous viewer.

    media object[]

    Parsed QDC recipe media attachments; absent or invalid stored media is returned as an empty array.

    tags object[]
  • Array [
  • language string
    id number required
    name string
  • ]
  • references object[]
  • Array [
  • id string required
    from number
    to number
    chapterId number
  • ]
  • author object
    recentComment object
    id number required
    author object required
    postsCount number
    avatarUrls object required
    small string
    medium string
    large string
    id string required
    username string
    verified boolean

    Default value: false

    firstName string
    lastName string
    fullName string
    memberType number
    body string required
    createdAt date-time required
    room object nullable
    isPublic boolean deprecated

    Deprecated content-visibility projection. Use privacy instead.

    isAdmin object
    isOwner object
    privacy string required

    Possible values: [public, closed, private]

    id number required
    subdomain string
    roomType string
    verified boolean

    Default value: false

    name string
    _group string
    mentions object[]
  • Array [
  • postsCount number
    avatarUrls object required
    small string
    medium string
    large string
    id string required
    username string
    verified boolean

    Default value: false

    firstName string
    lastName string
    fullName string
    memberType number
    locations object required
    followersCount number required
    displayName string
  • ]
  • isLiked boolean
    isByFollowedUser boolean
    isCommentedOn boolean
    isSaved boolean
    id number required
    authorId string required
    editSource string
    privacySource string
    body string
    discussionId number
    draft boolean

    Default value: false

    createdAt date-time required
    updatedAt date-time required
    publishedAt date-time
    global boolean
    toxicityScore number
    reported boolean

    Default value: false

    views number
    removed boolean

    Default value: false

    verified boolean

    Default value: false

    roomPostStatus number

    Possible values: [0, 1, 2]

    Default value: 0

    @description 0: OnlyMembers, 1: Publicly, 2: AsRoom

    hidden boolean

    Default value: false

    commentsCount number required

    Default value: 0

    likesCount number

    Default value: 0

    viewsCount number

    Default value: 0

    readsCount number

    Default value: 0

    languageId number
    languageName string
    moderationStatus number

    Possible values: [1, 2, 3, 4, 5, 6, 30]

    featured = 1, // Like Sticky posts, will be featured for a time period.Shown at top in feed and partner apps

    promoted = 2, // High quality content.Shown at top(after featured) in feed and partner apps

    normal = 3, // Default status, available in search, latest and popular tabs.In feed(if you're following the author)

    hidden = 4, // Visible only to author or moderators, or via private share link.

    private_note = 5, // Private notes, only visible to author or via private share link.These are the posts made "private" by moderators.

    requested_review = 6, // User requested the review, treat them has hidden.Only visible to author and moderators

    deleted = 30,

    reviewStatus number

    Possible values: [1, 2, 100]

    Moderator review state. 1 = reviewed, 2 = pending review, 100 = legacy. This is separate from post visibility, which is controlled by moderationStatus.

    reviewedAt date-time
    featuredAt date-time
    pushedUpAt date-time
    estimatedReadingTime number

    Default value: 0

    roomId number required
    postTypeId number required
    postTypeName string
    success boolean required
Loading...