Skip to main content
POST

Authorizations

Authorization
string
header
required

Send an account API key in the Authorization: Bearer <key> header.

Headers

OpenPMM-Request-Id
string

Optional request ID. OpenPMM returns this value when it is valid. Otherwise, OpenPMM creates a request ID.

Maximum string length: 128
Idempotency-Key
string
required

A unique key for this operation. Use the same key when you retry the same request. Different input with the same key returns 409.

Required string length: 1 - 200

Path Parameters

workspace_id
string
required

Unique workspace ID.

Example:

"ws_01JABCDEF"

Body

application/json
provider
enum<string>
required

Provider to connect.

Available options:
bluesky,
x,
youtube,
facebook,
instagram,
threads,
mastodon,
linkedin,
tiktok
Example:

"x"

instance_origin
string<uri>

Required only for Mastodon. Use the instance origin.

Example:

"https://mastodon.social"

account_identifier
string

Required only for Bluesky. Use the account handle or DID.

Example:

"alice.bsky.social"

Response

A pending provider connection session.

id
string
required

Unique connection session ID.

Example:

"dcs_01JABCDEF"

object
string
required

Object type.

Allowed value: "destination_connection_session"
provider
enum<string>
required

Social provider.

Available options:
bluesky,
x,
youtube,
facebook,
instagram,
threads,
mastodon,
linkedin,
tiktok
Example:

"x"

status
enum<string>
required

Current authorization flow status.

Available options:
pending,
completed,
failed,
expired
authorization_url
string<uri>
required

URL that a person must open to authorize the provider.

expires_at
string<date-time>
required

Time when the pending session expires.

Example:

"2026-08-09T12:00:00.000Z"

selection_required
boolean
required

Whether you must select a Facebook Page before you can create Facebook posts.

completed_at
string<date-time> | null

Time when authorization completed.

Example:

"2026-08-09T12:00:00.000Z"

failure_code
string | null

Stable failure code when authorization fails.

failed_at
string<date-time> | null

Time when authorization failed.

Example:

"2026-08-09T12:00:00.000Z"