Postiz Integrations API

Connected social media channels and scheduling slots.

Operations 34

GET /integrations List all integrations #
DELETE /integrations #
GET /groups List all groups (customers) #
DELETE /integrations/{id} Delete a channel #
GET /integrations/{id} #
GET /social/{integration} Get OAuth connect URL #
GET /integration-settings/{id} Get settings and tools #
POST /integration-trigger/{id} Trigger an integration tool #
GET /is-connected Check connection status #
GET /find-slot/{id} Find next available slot #
POST /integrations/social-connect/{integration} #
POST /integrations/public/provider/{id}/connect #
POST /integrations/extension-refresh #
POST /integrations/provider/{id}/connect #
GET /integrations/{identifier}/internal-plugs #
GET /integrations/customers #
PUT /integrations/{id}/group #
PUT /integrations/{id}/customer-name #
GET /integrations/list #
POST /integrations/{id}/settings #
POST /integrations/{id}/nickname #
GET /integrations/social/{integration} #
POST /integrations/{id}/time #
POST /integrations/mentions #
POST /integrations/function #
POST /integrations/disable #
POST /integrations/enable #
GET /integrations/plug/list #
GET /integrations/{id}/plugs #
POST /integrations/{id}/plugs #
PUT /integrations/plugs/{id}/activate #
GET /integrations/telegram/updates #
POST /integrations/moltbook/register #
GET /integrations/moltbook/status #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/postiz-integrations-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

postiz-integrations-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Postiz Integrations API
  version: '1.0'
  description: 'Operations tagged Integrations across 3 of this provider''s published API definitions: postiz-integrations-api-openapi.yml, postiz-platform-swagger-openapi.json, postiz-public-api-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.postiz.com/public/v1
  description: Postiz Cloud
- url: https://{your-domain}/api/public/v1
  description: Self-hosted
  variables:
    your-domain:
      default: localhost:5000
      description: Your Postiz instance domain
tags:
- name: Integrations
  description: Connected social media channels and scheduling slots.
paths:
  /integrations:
    get:
      tags:
      - Integrations
      summary: List all integrations
      description: Returns all connected social media channels for your organization.
      operationId: listIntegrations
      parameters:
      - name: group
        in: query
        required: false
        description: Filter integrations by customer (group) ID.
        schema:
          type: string
      responses:
        '200':
          description: List of integrations
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Integration'
      security:
      - ApiKeyAuth: []
    delete:
      operationId: IntegrationsController_deleteChannel
      parameters: []
      responses:
        '200':
          description: ''
      tags:
      - Integrations
      security:
      - ApiKeyAuth: []
    servers:
    - url: https://api.postiz.com/public/v1
      description: Postiz Cloud
    - url: https://{your-domain}/api/public/v1
      description: Self-hosted
      variables:
        your-domain:
          default: localhost:5000
          description: Your Postiz instance domain
  /groups:
    get:
      tags:
      - Integrations
      summary: List all groups (customers)
      description: Returns the customer groups configured for your organization.
      operationId: listGroups
      responses:
        '200':
          description: List of groups
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Group'
      security:
      - ApiKeyAuth: []
    servers:
    - url: https://api.postiz.com/public/v1
      description: Postiz Cloud
    - url: https://{your-domain}/api/public/v1
      description: Self-hosted
      variables:
        your-domain:
          default: localhost:5000
          description: Your Postiz instance domain
  /integrations/{id}:
    delete:
      tags:
      - Integrations
      summary: Delete a channel
      description: Disconnects and deletes a connected channel by integration ID.
      operationId: deleteChannel
      parameters:
      - name: id
        in: path
        required: true
        description: Integration ID
        schema:
          type: string
      responses:
        '200':
          description: Channel deleted
      security:
      - ApiKeyAuth: []
    get:
      operationId: IntegrationsController_getSingleIntegration
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      - name: order
        required: true
        in: query
        schema:
          type: string
      responses:
        '200':
          description: ''
      tags:
      - Integrations
      security:
      - ApiKeyAuth: []
    servers:
    - url: https://api.postiz.com/public/v1
      description: Postiz Cloud
    - url: https://{your-domain}/api/public/v1
      description: Self-hosted
      variables:
        your-domain:
          default: localhost:5000
          description: Your Postiz instance domain
  /social/{integration}:
    get:
      tags:
      - Integrations
      summary: Get OAuth connect URL
      description: Returns the OAuth URL used to connect a new channel for the given provider.
      operationId: getIntegrationUrl
      parameters:
      - name: integration
        in: path
        required: true
        description: Provider identifier (e.g. x, linkedin, facebook).
        schema:
          type: string
      - name: refresh
        in: query
        required: false
        description: Whether to refresh an existing connection.
        schema:
          type: boolean
      responses:
        '200':
          description: OAuth connect URL
          content:
            application/json:
              schema:
                type: object
                properties:
                  url:
                    type: string
      security:
      - ApiKeyAuth: []
    servers:
    - url: https://api.postiz.com/public/v1
      description: Postiz Cloud
    - url: https://{your-domain}/api/public/v1
      description: Self-hosted
      variables:
        your-domain:
          default: localhost:5000
          description: Your Postiz instance domain
  /integration-settings/{id}:
    get:
      tags:
      - Integrations
      summary: Get settings and tools
      description: Returns the available settings and tools for a connected channel.
      operationId: getIntegrationSettings
      parameters:
      - name: id
        in: path
        required: true
        description: Integration ID
        schema:
          type: string
      responses:
        '200':
          description: Integration settings and tools
      security:
      - ApiKeyAuth: []
    servers:
    - url: https://api.postiz.com/public/v1
      description: Postiz Cloud
    - url: https://{your-domain}/api/public/v1
      description: Self-hosted
      variables:
        your-domain:
          default: localhost:5000
          description: Your Postiz instance domain
  /integration-trigger/{id}:
    post:
      tags:
      - Integrations
      summary: Trigger an integration tool
      description: Invokes a named tool/method exposed by a connected channel.
      operationId: triggerIntegrationTool
      parameters:
      - name: id
        in: path
        required: true
        description: Integration ID
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                methodName:
                  type: string
                data:
                  type: object
      responses:
        '200':
          description: Tool triggered
      security:
      - ApiKeyAuth: []
    servers:
    - url: https://api.postiz.com/public/v1
      description: Postiz Cloud
    - url: https://{your-domain}/api/public/v1
      description: Self-hosted
      variables:
        your-domain:
          default: localhost:5000
          description: Your Postiz instance domain
  /is-connected:
    get:
      tags:
      - Integrations
      summary: Check connection status
      description: Verifies that the API key is valid and the account is reachable.
      operationId: isConnected
      responses:
        '200':
          description: Connection status
      security:
      - ApiKeyAuth: []
    servers:
    - url: https://api.postiz.com/public/v1
      description: Postiz Cloud
    - url: https://{your-domain}/api/public/v1
      description: Self-hosted
      variables:
        your-domain:
          default: localhost:5000
          description: Your Postiz instance domain
  /find-slot/{id}:
    get:
      tags:
      - Integrations
      summary: Find next available slot
      description: Get the next available time slot for posting to a specific channel.
      operationId: findSlot
      parameters:
      - name: id
        in: path
        required: true
        description: Integration ID
        schema:
          type: string
      responses:
        '200':
          description: Next available slot
          content:
            application/json:
              schema:
                type: object
                properties:
                  date:
                    type: string
                    format: date-time
              example:
                date: '2025-01-15T10:00:00.000Z'
      security:
      - ApiKeyAuth: []
    servers:
    - url: https://api.postiz.com/public/v1
      description: Postiz Cloud
    - url: https://{your-domain}/api/public/v1
      description: Self-hosted
      variables:
        your-domain:
          default: localhost:5000
          description: Your Postiz instance domain
  /integrations/social-connect/{integration}:
    post:
      operationId: NoAuthIntegrationsController_connectSocialMedia
      parameters:
      - name: integration
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConnectIntegrationDto'
      responses:
        '201':
          description: ''
      tags:
      - Integrations
  /integrations/public/provider/{id}/connect:
    post:
      operationId: NoAuthIntegrationsController_saveProviderPage
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '201':
          description: ''
      tags:
      - Integrations
  /integrations/extension-refresh:
    post:
      operationId: NoAuthIntegrationsController_extensionRefreshCookies
      parameters: []
      responses:
        '201':
          description: ''
      tags:
      - Integrations
  /integrations/provider/{id}/connect:
    post:
      operationId: IntegrationsController_saveProviderPage
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '201':
          description: ''
      tags:
      - Integrations
  /integrations/{identifier}/internal-plugs:
    get:
      operationId: IntegrationsController_getInternalPlugs
      parameters:
      - name: identifier
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
      tags:
      - Integrations
  /integrations/customers:
    get:
      operationId: IntegrationsController_getCustomers
      parameters: []
      responses:
        '200':
          description: ''
      tags:
      - Integrations
  /integrations/{id}/group:
    put:
      operationId: IntegrationsController_updateIntegrationGroup
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
      tags:
      - Integrations
  /integrations/{id}/customer-name:
    put:
      operationId: IntegrationsController_updateOnCustomerName
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
      tags:
      - Integrations
  /integrations/list:
    get:
      operationId: IntegrationsController_getIntegrationList
      parameters: []
      responses:
        '200':
          description: ''
      tags:
      - Integrations
  /integrations/{id}/settings:
    post:
      operationId: IntegrationsController_updateProviderSettings
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '201':
          description: ''
      tags:
      - Integrations
  /integrations/{id}/nickname:
    post:
      operationId: IntegrationsController_setNickname
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '201':
          description: ''
      tags:
      - Integrations
  /integrations/social/{integration}:
    get:
      operationId: IntegrationsController_getIntegrationUrl
      parameters:
      - name: integration
        required: true
        in: path
        schema:
          type: string
      - name: refresh
        required: true
        in: query
        schema:
          type: string
      - name: externalUrl
        required: true
        in: query
        schema:
          type: string
      - name: redirectUrl
        required: true
        in: query
        schema:
          type: string
      - name: onboarding
        required: true
        in: query
        schema:
          type: string
      responses:
        '200':
          description: ''
      tags:
      - Integrations
  /integrations/{id}/time:
    post:
      operationId: IntegrationsController_setTime
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IntegrationTimeDto'
      responses:
        '201':
          description: ''
      tags:
      - Integrations
  /integrations/mentions:
    post:
      operationId: IntegrationsController_mentions
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IntegrationFunctionDto'
      responses:
        '201':
          description: ''
      tags:
      - Integrations
  /integrations/function:
    post:
      operationId: IntegrationsController_functionIntegration
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IntegrationFunctionDto'
      responses:
        '201':
          description: ''
      tags:
      - Integrations
  /integrations/disable:
    post:
      operationId: IntegrationsController_disableChannel
      parameters: []
      responses:
        '201':
          description: ''
      tags:
      - Integrations
  /integrations/enable:
    post:
      operationId: IntegrationsController_enableChannel
      parameters: []
      responses:
        '201':
          description: ''
      tags:
      - Integrations
  /integrations/plug/list:
    get:
      operationId: IntegrationsController_getPlugList
      parameters: []
      responses:
        '200':
          description: ''
      tags:
      - Integrations
  /integrations/{id}/plugs:
    get:
      operationId: IntegrationsController_getPlugsByIntegrationId
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
      tags:
      - Integrations
    post:
      operationId: IntegrationsController_postPlugsByIntegrationId
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PlugDto'
      responses:
        '201':
          description: ''
      tags:
      - Integrations
  /integrations/plugs/{id}/activate:
    put:
      operationId: IntegrationsController_changePlugActivation
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
      tags:
      - Integrations
  /integrations/telegram/updates:
    get:
      operationId: IntegrationsController_getUpdates
      parameters: []
      responses:
        '200':
          description: ''
      tags:
      - Integrations
  /integrations/moltbook/register:
    post:
      operationId: IntegrationsController_moltbookRegister
      parameters: []
      responses:
        '201':
          description: ''
      tags:
      - Integrations
  /integrations/moltbook/status:
    get:
      operationId: IntegrationsController_moltbookStatus
      parameters:
      - name: apiKey
        required: true
        in: query
        schema:
          type: string
      responses:
        '200':
          description: ''
      tags:
      - Integrations
components:
  schemas:
    Group:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
    Integration:
      type: object
      properties:
        id:
          type: string
          description: Unique integration ID.
        name:
          type: string
          description: Display name of the account.
        identifier:
          type: string
          description: Provider identifier.
          enum:
          - x
          - linkedin
          - linkedin-page
          - facebook
          - instagram
          - instagram-standalone
          - threads
          - bluesky
          - mastodon
          - warpcast
          - nostr
          - vk
          - youtube
          - tiktok
          - reddit
          - lemmy
          - discord
          - slack
          - telegram
          - kick
          - twitch
          - pinterest
          - dribbble
          - medium
          - devto
          - hashnode
          - wordpress
          - gmb
          - listmonk
          - moltbook
          - skool
          - whop
        picture:
          type: string
          description: Profile picture URL.
        disabled:
          type: boolean
          description: Whether the integration is disabled.
        profile:
          type: string
          description: Profile handle/username.
        customer:
          type: object
          properties:
            id:
              type: string
            name:
              type: string
    IntegrationFunctionDto:
      type: object
      properties: {}
    PlugDto:
      type: object
      properties: {}
    IntegrationTimeDto:
      type: object
      properties: {}
    ConnectIntegrationDto:
      type: object
      properties: {}
    Group_2:
      type: object
      properties:
        id:
          type: string
          description: Unique group (customer) ID
        name:
          type: string
          description: Group (customer) display name
    Integration_2:
      type: object
      properties:
        id:
          type: string
          description: Unique integration ID
        name:
          type: string
          description: Display name of the account
        identifier:
          type: string
          description: Provider identifier (27 platforms supported)
          enum:
          - x
          - linkedin
          - linkedin-page
          - facebook
          - instagram
          - instagram-standalone
          - threads
          - bluesky
          - mastodon
          - warpcast
          - nostr
          - vk
          - youtube
          - tiktok
          - reddit
          - lemmy
          - discord
          - slack
          - telegram
          - kick
          - twitch
          - pinterest
          - dribbble
          - medium
          - devto
          - hashnode
          - wordpress
          - gmb
          - listmonk
          - moltbook
          - skool
          - whop
        picture:
          type: string
          description: Profile picture URL
        disabled:
          type: boolean
          description: Whether the integration is disabled
        profile:
          type: string
          description: Profile handle/username
        customer:
          type: object
          properties:
            id:
              type: string
            name:
              type: string
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: Authorization
      description: Your Postiz API key, sent as the raw value of the Authorization header.
x-refined-from:
- postiz-integrations-api-openapi.yml
- postiz-platform-swagger-openapi.json
- postiz-public-api-openapi.json