---
title: "Get Mastodon hashtag posts"
method: GET
path: "/v1/mastodon/hashtag"
tags: ["Mastodon"]
---

# Get Mastodon hashtag posts

`GET /v1/mastodon/hashtag`

## Request

- Base URL: `https://api.scrapeatlas.com`
- URL: `https://api.scrapeatlas.com/v1/mastodon/hashtag`
- Auth: API key in header `x-api-key`

Retrieve up to 40 recent public posts with a hashtag as a Mastodon server sees them, newest first. The first page adds daily usage for the last seven days. Each successful request costs 1 account credit, including partial results. Failed requests cost 0 credits.

## Query parameters

- `tag` string, required
- `server` 'mastodon.social' | 'mastodon.online' | 'mstdn.social' | 'mas.to' | 'mastodon.world' | 'mstdn.jp' | 'fosstodon.org' | 'hachyderm.io' | 'infosec.exchange' | 'techhub.social' | 'universeodon.com' | 'mastodon.art' | 'social.vivaldi.net' | 'mastodon.cloud' | 'sfba.social' | 'chaos.social' | 'piaille.fr' | 'mastodon.gamedev.place' | 'toot.community' | 'ioc.exchange' | 'indieweb.social' | 'masto.ai' | 'journa.host' | 'newsie.social' | 'social.coop' | 'mastodon.scot' | 'aus.social' | 'kolektiva.social'
- `cursor` string
- `since` union
  - number
  - string
- `until` union
  - number
  - string

## Response `200`

Inspect the response status and failure or coverage fields.

- union
  - object
    - `requestId` string, uuid, required
    - `accounting` object, required
      - `upstreamRequests` integer, required
      - `responseBytes` integer, required
      - `durationMs` number, required
    - `success` true, required
    - `status` 'success' | 'partial', required
    - `sourceUrl` string, uri, required
    - `fetchedAt` string, date-time, required
    - `server` string, required
    - `coverage` object, required
      - `source` 'public_api', required
      - `complete` boolean, required
      - `warnings` string[], required
      - `order` 'newest_first' | 'oldest_first' | 'ranked' | 'relevance' | 'source_order', required
      - `window` object
        - `since` string, date-time
        - `until` string, date-time
    - `hashtag` object
      - `name` string, required
      - `url` string, required
      - `history` object[]
        - `day` string, required
        - `uses` string, required
        - `accounts` string, required
    - `posts` union[], required
      - union
        - object
          - `id` string, required
          - `created_at` string, required
          - `in_reply_to_id` string, nullable, required
          - `in_reply_to_account_id` string, nullable, required
          - `sensitive` boolean, required
          - `spoiler_text` string, required
          - `visibility` string, required
          - `language` string, nullable, required
          - `uri` string, required
          - `url` string, nullable, required
          - `replies_count` integer, required
          - `reblogs_count` integer, required
          - `favourites_count` integer, required
          - `content` string, required
          - `account` object, required
            - `id` string, required
            - `username` string, required
            - `acct` string, required
            - `handle` string, required
            - `display_name` string, required
            - `url` string, required
            - `avatar` string, required
            - `bot` boolean, required
          - `media_attachments` object[], required
          - `mentions` object[], required
          - `tags` object[], required
          - `reblog` unknown, required
        - object
          - `id` string, required
          - `created_at` string, required
          - `visibility` string, required
          - `uri` string, required
          - `url` string, nullable, required
          - `account` object, required
            - `id` string, required
            - `username` string, required
            - `acct` string, required
            - `handle` string, required
            - `display_name` string, required
            - `url` string, required
            - `avatar` string, required
            - `bot` boolean, required
          - `reblog` object, required
            - `id` string, required
            - `created_at` string, required
            - `in_reply_to_id` string, nullable, required
            - `in_reply_to_account_id` string, nullable, required
            - `sensitive` boolean, required
            - `spoiler_text` string, required
            - `visibility` string, required
            - `language` string, nullable, required
            - `uri` string, required
            - `url` string, nullable, required
            - `replies_count` integer, required
            - `reblogs_count` integer, required
            - `favourites_count` integer, required
            - `content` string, required
            - `account` object, required
              - …
            - `media_attachments` object[], required
              - …
            - `mentions` object[], required
              - …
            - `tags` object[], required
              - …
            - `reblog` unknown, required
    - `cursor` string
  - object
    - `requestId` string, uuid, required
    - `accounting` object, required
      - `upstreamRequests` integer, required
      - `responseBytes` integer, required
      - `durationMs` number, required
    - `success` false, required
    - `status` 'failed' | 'challenged', required
    - `failure` object, required
      - `code` 'invalid_request' | 'unauthorized' | 'not_found' | 'restricted_page' | 'upstream_challenged' | 'upstream_rate_limited' | 'upstream_error' | 'unsupported_page' | 'response_too_large' | 'unsafe_redirect' | 'request_limit' | 'payload_too_complex' | 'timeout' | 'busy', required
      - `message` string, required

## Other responses

- `400`: Request could not complete; inspect error or failure.code.
- `401`: Request could not complete; inspect error or failure.code.
- `402`: Request could not complete; inspect error or failure.code.
- `403`: Request could not complete; inspect error or failure.code.
- `404`: Request could not complete; inspect error or failure.code.
- `408`: Request could not complete; inspect error or failure.code.
- `413`: Request could not complete; inspect error or failure.code.
- `429`: Request could not complete; inspect error or failure.code.
- `500`: Request could not complete; inspect error or failure.code.
- `502`: Request could not complete; inspect error or failure.code.
- `503`: Request could not complete; inspect error or failure.code.
- `504`: Request could not complete; inspect error or failure.code.

---

[API](https://skmtc.dev/scrapeatlas/apis/scrapeatlas-api.md) · [All operations](https://skmtc.dev/scrapeatlas/apis/scrapeatlas-api/llms.txt) · [OpenAPI document](https://skmtc.dev/scrapeatlas/apis/scrapeatlas-api/revisions/9ba049316894?raw)
