Skip to content

Webhooks

Note that all payloads are surrounded by an outer object with a single key (yetto) that looks like this:

{
    "yetto": {
        // event data
    }
}

Conversation

{
    "inbox": { "$ref": "#/inbox" },
    "title": "Help, I have an issue",
    "state": "open", // or "closed"
    "originating_message": { "$ref": "#/message" },
    "messages": [
        { "$ref": "#/message" },
    ],
    "html_url": "https://yetto.app/orgs/greeks/inboxes/support/conversations/1"
}

Inbox

{
    "name": "Support",
    "slug": "support",
    "visibility": "shared",
    "organization": { "$ref": "#/organization" }
}

Message

Note that only one of created_by_membership or created_by_plug is available.

{
    "created_by_membership": "#/membership",
    "created_by_plug": "#/plug",
    "conversation": "#/conversation",
    "author": {
        "name": "Billy M. Vanzetti",
    },
    "html_content": "<p><strong>Hello</strong> there</p>",
    "text_content": "**Hello** there",
    "visibility": "public", // or "internal"
    "attachments": [{
        "content": "qAgkB+OvMVguCD9KqElapA==",
        "encoding": "base64"
        }
    ]
}

Organization

{
    "name": "Greeks",
    "slug": "greeks",
    "status": "active", // or "inactive" / "suspended"
}

Plug Installation

Note that only one of created_by_membership or created_by_plug is available, as well as only one of installed_on_inbox or installed_on_organization.

{
    "installed_on_inbox": "#/inbox",
    "installed_on_organization": "#/organization",
    "plug": "#/plug",
}

Plug

{
    "name": "An Amazing Plug!",
    "handle": "an-amazing-plug",
}

Membership

{
    "number": "1",
    "relationship": "owner", // or "member"
    "user": { "$ref": "#/user" }
}

User

{
    "name": "Billy M. Vanzetti",
    "handle": "billy-m-vanzetti",
}