gitroomhq/postiz-app · error · Error

Tumblr blog not found

Error message

Tumblr blog not found

What it means

fetchPageInformation lists the connected Tumblr blogs and cannot find one matching data.id, so it throws a plain Error 'Tumblr blog not found'. This runs when refreshing page information for a stored integration.

Source

Thrown at libraries/nestjs-libraries/src/integrations/social/tumblr.provider.ts:335

      id: blog.name,
      name: blog.title || blog.name,
      username: blog.url || `https://${blog.name}.tumblr.com/`,
      followers: blog.followers || 0,
      primary: !!blog.primary,
      picture: {
        data: {
          url: this.getAvatarUrl(blog.name),
        },
      },
    }));
  }

  async fetchPageInformation(accessToken: string, data: { id: string }) {
    const blogs = await this.pages(accessToken);
    const blog = blogs.find((item) => item.id === data.id);

    if (!blog) {
      throw new Error('Tumblr blog not found');
    }

    return {
      id: blog.id,
      name: blog.name,
      access_token: accessToken,
      picture: blog.picture.data.url,
      username: blog.username,
    };
  }

  async reConnect(
    id: string,
    requiredId: string,
    accessToken: string
  ): Promise<Omit<AuthTokenDetails, 'refreshToken' | 'expiresIn'>> {
    const information = await this.fetchPageInformation(accessToken, {
      id: requiredId,

View on GitHub (pinned to 0f1647f749)

Solutions

  1. Verify the blog still exists at <blog>.tumblr.com and the same account owns it
  2. Reconnect the Tumblr channel in Postiz so a fresh token and blog list are stored
  3. If the blog was renamed, remove the old integration and add the new one
  4. Check the Tumblr app's permissions if the token can no longer list blogs
Defensive patterns

Strategy: try-catch

Validate before calling

const blogs = await provider.pages(accessToken);
const exists = blogs.some(b => b.id === data.id);
if (!exists) { /* prompt reconnect instead of calling fetchPageInformation */ }

Type guard

const hasBlog = (blogs: {id:string}[], id: string) => blogs.some(b => b.id === id);

Try / catch

catch (e) { if (e instanceof Error && e.message === 'Tumblr blog not found') { /* mark integration stale, ask user to reconnect */ } throw e; }

Prevention

When it happens

Trigger: The saved blog identifier in Postiz no longer appears in the blogs returned by Tumblr's /user/info + blog listing for the current token: blog deleted/renamed, token now belongs to a different account, or token scopes changed.

Common situations: User deleted or renamed their Tumblr blog; user re-authenticated a different Tumblr account; stale integration row after account switch.

Related errors


AI-assisted analysis of gitroomhq/postiz-app@0f1647f749 (2026-08-27). Data as JSON: /api/errors/430d3bd49ffada4b. Report an issue: GitHub.