{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/metricool/main/json-schema/metricool-public-blog-schema.json",
  "title": "PublicBlog",
  "x-generated": "2026-10-14",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/_original/metricool-api-openapi.json#/components/schemas/PublicBlog",
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "format": "int32"
    },
    "userId": {
      "type": "integer",
      "format": "int32"
    },
    "ownerUserId": {
      "type": "integer",
      "format": "int32"
    },
    "label": {
      "type": "string"
    },
    "url": {
      "type": "string"
    },
    "title": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "picture": {
      "type": "string"
    },
    "twitter": {
      "type": "string"
    },
    "facebook": {
      "type": "string"
    },
    "facebookPageId": {
      "type": "string"
    },
    "facebookGroup": {
      "type": "string"
    },
    "facebookGroupId": {
      "type": "string"
    },
    "instagram": {
      "type": "string"
    },
    "fbBusinessId": {
      "type": "string"
    },
    "googlePlus": {
      "type": "string"
    },
    "linkedinCompany": {
      "type": "string"
    },
    "facebookAds": {
      "type": "string"
    },
    "adwords": {
      "type": "string"
    },
    "gmb": {
      "type": "string"
    },
    "youtube": {
      "type": "string"
    },
    "twitch": {
      "type": "string"
    },
    "tiktokads": {
      "type": "string"
    },
    "pinterest": {
      "type": "string"
    },
    "tiktok": {
      "type": "string"
    },
    "threads": {
      "type": "string"
    },
    "bluesky": {
      "type": "string"
    },
    "feedRss": {
      "type": "string"
    },
    "tiktokAccountType": {
      "type": "string",
      "enum": [
        "BUSINESS",
        "PERSONAL"
      ]
    },
    "instagramConnectionType": {
      "type": "string",
      "enum": [
        "BUSINESS",
        "FACEBOOK_LOGIN"
      ]
    },
    "instagramFollowsUnfollowsAvailable": {
      "type": "boolean"
    },
    "twitterPicture": {
      "type": "string"
    },
    "twitterSubscriptionType": {
      "type": "string"
    },
    "facebookPicture": {
      "type": "string"
    },
    "facebookGroupPicture": {
      "type": "string"
    },
    "instagramPicture": {
      "type": "string"
    },
    "linkedInPicture": {
      "type": "string"
    },
    "facebookAdsPicture": {
      "type": "string"
    },
    "facebookAdsName": {
      "type": "string"
    },
    "pinterestPicture": {
      "type": "string"
    },
    "pinterestBusiness": {
      "type": "boolean"
    },
    "tiktokPicture": {
      "type": "string"
    },
    "tiktokBusinessTokenExpiration": {
      "type": "string"
    },
    "threadsPicture": {
      "type": "string"
    },
    "threadsAccountName": {
      "type": "string"
    },
    "blueskyPicture": {
      "type": "string"
    },
    "blueskyHandle": {
      "type": "string"
    },
    "fbUserId": {
      "type": "string"
    },
    "inUserId": {
      "type": "string"
    },
    "adwordsUserId": {
      "type": "string"
    },
    "adwordsAccountName": {
      "type": "string"
    },
    "gmbUserId": {
      "type": "string"
    },
    "gmbAccountName": {
      "type": "string"
    },
    "gmbAddress": {
      "type": "string"
    },
    "gmbUrl": {
      "type": "string"
    },
    "tiktokadsUserId": {
      "type": "string"
    },
    "linkedInCompanyPicture": {
      "type": "string"
    },
    "linkedInCompanyName": {
      "type": "string"
    },
    "linkedInTokenExpiration": {
      "type": "string"
    },
    "linkedInUserProfileURL": {
      "type": "string"
    },
    "youtubeChannelName": {
      "type": "string"
    },
    "youtubeChannelPicture": {
      "type": "string"
    },
    "twitchName": {
      "type": "string"
    },
    "twitchPicture": {
      "type": "string"
    },
    "twitchChannelId": {
      "type": "string"
    },
    "tiktokadsDisplayName": {
      "type": "string"
    },
    "tiktokadsPicture": {
      "type": "string"
    },
    "tiktokUserProfileUrl": {
      "type": "string"
    },
    "isShared": {
      "type": "boolean"
    },
    "ownerUsername": {
      "type": "string"
    },
    "whiteLabelLink": {
      "type": "string"
    },
    "analyticModeWhitelabelLink": {
      "type": "string"
    },
    "whiteLabelAlias": {
      "type": "string"
    },
    "hash": {
      "type": "string"
    },
    "version": {
      "type": "integer",
      "format": "int64"
    },
    "frontendVersion": {
      "type": "string"
    },
    "role": {
      "type": "string"
    },
    "deleteDate": {
      "type": "string",
      "format": "date-time"
    },
    "deleted": {
      "type": "boolean"
    },
    "joinDate": {
      "type": "string",
      "format": "date-time"
    },
    "firstConnectionDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastResolvedInboxMessageTimestamp": {
      "type": "integer",
      "format": "int64"
    },
    "lastReadInboxMessageTimestamp": {
      "type": "integer",
      "format": "int64"
    },
    "timezone": {
      "type": "string"
    },
    "availableConnectors": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "brandRole": {
      "$ref": "#/$defs/BrandRole"
    },
    "isWhiteLabel": {
      "type": "boolean"
    },
    "isWhiteLabelOnlyRead": {
      "type": "boolean"
    },
    "engagementRatio": {
      "type": "integer",
      "format": "int32"
    },
    "hasXOAuth2Token": {
      "type": "boolean"
    },
    "isDemo": {
      "type": "boolean"
    },
    "allWhiteLabelLinks": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      },
      "writeOnly": true
    }
  },
  "$defs": {
    "BrandRole": {
      "required": [
        "actions",
        "name",
        "organizationActions",
        "userId"
      ],
      "type": "object",
      "properties": {
        "id": {
          "type": "integer",
          "format": "int64"
        },
        "userId": {
          "type": "integer",
          "format": "int32"
        },
        "name": {
          "minLength": 1,
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "color": {
          "type": "string"
        },
        "type": {
          "type": "string"
        },
        "assignable": {
          "type": "boolean"
        },
        "teamMemberOnly": {
          "type": "boolean"
        },
        "deletedDate": {
          "$ref": "#/$defs/DateTimeInfo"
        },
        "deleted": {
          "type": "boolean"
        },
        "actions": {
          "$ref": "#/$defs/BrandRoleActions"
        },
        "organizationActions": {
          "$ref": "#/$defs/OrganizationRoleActionsDto"
        },
        "assignedUsersCount": {
          "type": "integer",
          "format": "int32"
        },
        "assignedEnabledCount": {
          "type": "integer",
          "format": "int32"
        },
        "assignedDisabledCount": {
          "type": "integer",
          "format": "int32"
        }
      }
    },
    "BrandRoleActions": {
      "type": "object",
      "properties": {
        "viewAnalytics": {
          "type": "boolean"
        },
        "viewInbox": {
          "type": "boolean"
        },
        "viewPlanner": {
          "type": "boolean"
        },
        "viewAds": {
          "type": "boolean"
        },
        "viewSmartlinks": {
          "type": "boolean"
        },
        "fullAccessReports": {
          "type": "boolean"
        },
        "fullAccessInbox": {
          "type": "boolean"
        },
        "fullAccessPlanner": {
          "type": "boolean"
        },
        "fullAccessAds": {
          "type": "boolean"
        },
        "fullAccessSmartlinks": {
          "type": "boolean"
        },
        "fullAccessHashtagTracker": {
          "type": "boolean"
        },
        "editBrand": {
          "type": "boolean"
        },
        "schedulePosts": {
          "type": "boolean"
        },
        "publishPosts": {
          "type": "boolean"
        },
        "approvePosts": {
          "type": "boolean"
        },
        "viewCondensedAnalytics": {
          "type": "boolean"
        },
        "fullAccessDashboards": {
          "type": "boolean"
        },
        "viewDashboards": {
          "type": "boolean"
        },
        "editFlow": {
          "type": "boolean"
        },
        "viewFlow": {
          "type": "boolean"
        },
        "fullAccessStudio": {
          "type": "boolean"
        }
      }
    },
    "DateTimeInfo": {
      "required": [
        "dateTime"
      ],
      "type": "object",
      "properties": {
        "dateTime": {
          "type": "string",
          "description": "Local Date-time represented with a certain timezone "
        },
        "timezone": {
          "type": "string",
          "description": "Timezone applied to the datetime"
        }
      }
    },
    "OrganizationRoleActionsDto": {
      "type": "object",
      "properties": {
        "manageBrands": {
          "type": "boolean",
          "description": "Whether the role can create and manage brands at the organization level."
        },
        "manageRoles": {
          "type": "boolean",
          "description": "Whether the role can create and manage other brand roles at the organization level."
        },
        "manageTeamMembers": {
          "type": "boolean",
          "description": "Whether the role can manage team members at the organization level."
        },
        "manageAgencyConfig": {
          "type": "boolean",
          "description": "Whether the role can manage the agency configuration."
        },
        "manageAgencyClients": {
          "type": "boolean",
          "description": "Whether the role can manage agency clients."
        }
      },
      "description": "Organization-level permissions granted by a brand role, on top of the per-brand actions. Never null in a read response - a role that never had organization permissions set is reported with every field false."
    }
  }
}