API сообщений пока-что не сделан.

Жабблер API

Нет ничего приятнее, чем видеть, как талантливые дизайнеры и инженеры используют Жабблер для создания совершенно новых форм творческого самовыражения. Мы приложили огромные усилия, чтобы сделать этот API достаточно функциональным и гибким для любых проектов, в которых вы будете его использовать.

Чтобы вызвать функцию, вам необходимо перейти на страницу {your_domain}/developer/api и ввести название функции, к примеру, функцию которая показывает все посты: {your_domain}/developer/api/Posts/get_all_posts?session={session}&last_id=0

Практически все функции требуют специальный айди сессии (Как авторизовать пользователя и получить айди сессии?).

Содержание

Sessions

create_session

Параметры: email, password

Создаёт айди сессии и возвращает его.

{
    "session": "{session}"
}

remove_session

Параметры: session, token

Удаляет сессию (к примеру, это нужно для выхода из аккаунта).

get_user_by_session

Параметры: session

Возвращает данные аккаунта и профиля используя специальный айди сессии.

{
    "id": 1,
    "nickname": "admin",
    "name": "Administrator",
    "biography": "",
    "profileImage": "{url}",
    "profileCover": "",
    "followers_count": 0,
    "personalization_config": {
        "background": "#ffffff",
        "accent": "#000000"
    },
    "verifed": true,
    "token": "{token}"
}

User

get_user_by_token

Параметры: token

Возвращает данные аккаунта и профиля используя токен.

{
    "id": 1,
    "nickname": "admin",
    "name": "Administrator",
    "biography": "",
    "profileImage": "{url}",
    "profileCover": "",
    "followers_count": 0,
    "personalization_config": {
        "background": "#ffffff",
        "accent": "#000000"
    },
    "verifed": true,
    "token": "{token}"
}

get_user_by_id

Параметры: id

Возвращает данные аккаунта и профиля используя айди профиля.

{
    "id": 1,
    "nickname": "admin",
    "name": "Administrator",
    "biography": "",
    "profileImage": "{url}",
    "profileCover": "",
    "followers_count": 0,
    "personalization_config": {
        "background": "#ffffff",
        "accent": "#000000"
    },
    "verifed": true
}

get_user_by_nickname

Параметры: nickname

Возвращает данные профиля используя никнейм.

{
    "id": 1,
    "nickname": "admin",
    "name": "Administrator",
    "biography": "",
    "profileImage": "{url}",
    "profileCover": "",
    "followers_count": 0,
    "personalization_config": {
        "background": "#ffffff",
        "accent": "#000000"
    },
    "verifed": true
}

check_likes_hidden

Параметры: nickname

Если у пользователя скрыты посты которые ему нравятся то возвращается true

{
    "result": false
}

Posts

Если необходимо задать теги, то их нужно перечислять через запятую. Пример - api,zhabbler,test

add

Параметры: session, post, urlid, contains (1 = пост имеет спойлеры), who_comment (1 = никто), who_repost (1 = никто), repost (айди поста для репоста), question (айди вопроса для ответа), tags

Добавляет пост.


Список постов возвращается в таком виде

[
    {
        "post_real_id": 7,
        "post_id": "fcekMwaGBePt",
        "user": {
            "id": 1,
            "nickname": "admin",
            "name": "Administrator",
            "biography": "",
            "profileImage": "{url}",
            "profileCover": "",
            "followers_count": 0,
            "personalization_config": {
                "background": "#ffffff",
                "accent": "#000000"
            },
            "verifed": true
        },
        "reposted_to": [],
        "answered_to": [],
        "content": "<h1>Hello, world</h1>",
        "tags": [
            "hello",
            "world",
            "helloworld"
        ],
        "liked": 0,
        "uploaded": "2025-01-16 00:00:00",
        "post_settings": {
            "all_repost": true,
            "all_comment": true
        },
        "who_liked": [],
        "user_liked": false
    }
]

get_all_posts

Параметры: session, last_id (последний айди поста, к примеру это нужно для бесконечной прокрутки)

Возвращает список всех постов.

get_posts_by_user

Параметры: session, nickname, last_id (последний айди поста, к примеру это нужно для бесконечной прокрутки)

Возвращает список всех постов от определённого пользователя.

get_posts_by_user_tags

Параметры: session, last_id (последний айди поста, к примеру это нужно для бесконечной прокрутки)

Возвращает список всех постов, имеющие теги на которых он подписан.

get_posts_by_followings

Параметры: session, last_id (последний айди поста, к примеру это нужно для бесконечной прокрутки)

Возвращает список всех постов с подписок.

get_liked_posts

Если у заданного пользователя скрыты посты которые ему понравились, но заданная сессия пользователя совпадает с заданным пользователем, все равно список постов вернётся

Параметры: session, nickname, last_id (последний айди поста, к примеру это нужно для бесконечной прокрутки)

Возвращает список постов которые понравились пользователю.

get_post

Параметры: session, post_id

Возвращает данные поста используя айди поста.

get_comments

Параметры: id, session

Возвращает список всех комментариев под постом.

[
    {
        "id": 284,
        "user": {
            "id": 1,
            "nickname": "admin",
            "name": "Administrator",
            "biography": "",
            "profileImage": "{url}",
            "profileCover": "",
            "followers_count": 0,
            "personalization_config": {
                "background": "#ffffff",
                "accent": "#000000"
            },
            "verifed": true
        },
        "comment": "Hello, world!",
        "post_id": "EGu74wjD1PDH",
        "added": "2024-11-24 00:00:00"
    }
]

comment

Параметры: session, post_id, comment

Добавляет комментарий под постом.

check_post_existence

Параметры: post_id

Возвращает true если пост существует.

{
    "result": true
}

add_followed_tags

Параметры: session, tags

Изменяет список тегов на которые подписан пользователь.

{
    "result": true
}

get_followed_tags

Параметры: session

Возвращает список тегов на которые подписан пользователь.

[
    "photo",
    "photography"
]

like

Параметры: strong, post_id

Ставит/убирает отметку нравится на пост.

{
    "liked": true
}

get_who_liked

Параметры: post_id

Возвращает список пользователей которым понравился пост.

[
    {
        "id": 1,
        "nickname": "admin",
        "name": "Administrator",
        "biography": "",
        "profileImage": "{url}",
        "profileCover": "",
        "followers_count": 0,
        "personalization_config": {
            "background": "#ffffff",
            "accent": "#000000"
        },
        "verifed": true,
        "token": "{token}"
    }
]

Questions

check_question_existence

Параметры: id

Возвращает true если вопрос существует.

{
    "result": true
}

get_question

Параметры: id

Возвращает данные вопроса.

{
    "result": true
}

allowed_to_ask

Параметры: nickname

Возвращает true если пользователь разрешил задавать ему вопросы.

{
    "result": true
}

ask_question

Параметры: session, question, nickname, anonymous (0 = нет, 1 = да)

Задать вопрос пользователю.

Follow

check_follow

Параметры: session, nickname

Возвращает true если пользователь подписан на заданного пользователя.

{
    "result": true
}

follow

Параметры: session, nickname

Подписаться/отписаться на пользователя.

{
    "followed": true
}

Notifications

get_notifications

Параметры: session

Получает список всех уведомлений.

[
    {
        "notification_type": "new_repost",
        "notification_author": {
            "id": 1,
            "nickname": "admin",
            "name": "Administrator",
            "biography": "",
            "profileImage": "{url}",
            "profileCover": "",
            "followers_count": 0,
            "personalization_config": {
                "background": "#ffffff",
                "accent": "#000000"
            },
            "verifed": true
        },
        "notification_linked": "/zhab/{id}",
        "notifciation_appeared": "2025-01-15T13:31:35-05:00"
    }
]

get_unread_notifications_count

Параметры: session

Получить количество непрочитанных уведомлений.

{
    "result": 2
}

Inbox

get_messages

Параметры: session

Получает список всех сообщений с входящих.

[
    {
        "message_by": {
            "nickname": "anonymous",
            "profileImage": "{url}",
            "verifed": false
        },
        "message": "question_asked",
        "question": {
            "id": "{question_id}",
            "user": {
                "nickname": "anonymous",
                "profileImage": "{url}"
            },
            "question": "Когда обновление API?",
            "question_answered": false
        }
    }
]

get_unread_count_msgs

Параметры: session

Получить количество непрочитанных сообщений с входящих.

{
    "result": 2
}