Canny Posts API
The Posts API from Canny — 13 operation(s) for posts.
The Posts API from Canny — 13 operation(s) for posts.
openapi: 3.1.0
info:
title: Canny REST Autopilot Posts API
description: 'REST API for retrieving and managing Canny customer-feedback resources:
boards, categories, changelog entries, comments, companies, ideas, posts,
status changes, tags, users, and votes. All requests are POST and JSON-
bodied. Authentication is a secret API key passed in the apiKey body
parameter (or the x-api-key header on supported endpoints).
This specification is a best-effort, hand-authored representation of the
publicly documented v1/v2 endpoints at https://developers.canny.io/.
Request and response payloads are intentionally generic where the public
docs do not enumerate the full property schema.
'
version: 1.0.0
contact:
name: Canny
url: https://developers.canny.io/
servers:
- url: https://canny.io/api/v1
description: Canny v1 base URL
- url: https://canny.io/api/v2
description: Canny v2 base URL (cursor-paginated endpoints)
security:
- apiKeyBody: []
- apiKeyHeader: []
tags:
- name: Posts
paths:
/posts/retrieve:
post:
tags:
- Posts
summary: Retrieve a post
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AuthedRequest'
responses:
'200':
$ref: '#/components/responses/GenericObject'
/posts/list:
post:
tags:
- Posts
summary: List posts
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PagedAuthedRequest'
responses:
'200':
$ref: '#/components/responses/GenericList'
/posts/create:
post:
tags:
- Posts
summary: Create a post
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AuthedRequest'
responses:
'200':
$ref: '#/components/responses/GenericObject'
/posts/change_board:
post:
tags:
- Posts
summary: Move a post to another board
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AuthedRequest'
responses:
'200':
$ref: '#/components/responses/GenericObject'
/posts/change_category:
post:
tags:
- Posts
summary: Change a post's category
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AuthedRequest'
responses:
'200':
$ref: '#/components/responses/GenericObject'
/posts/change_status:
post:
tags:
- Posts
summary: Change a post's status
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AuthedRequest'
responses:
'200':
$ref: '#/components/responses/GenericObject'
/posts/merge:
post:
tags:
- Posts
summary: Merge two posts
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AuthedRequest'
responses:
'200':
$ref: '#/components/responses/GenericObject'
/posts/add_tag:
post:
tags:
- Posts
summary: Add a tag to a post
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AuthedRequest'
responses:
'200':
$ref: '#/components/responses/GenericObject'
/posts/remove_tag:
post:
tags:
- Posts
summary: Remove a tag from a post
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AuthedRequest'
responses:
'200':
$ref: '#/components/responses/GenericObject'
/posts/update:
post:
tags:
- Posts
summary: Update a post
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AuthedRequest'
responses:
'200':
$ref: '#/components/responses/GenericObject'
/posts/delete:
post:
tags:
- Posts
summary: Delete a post
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AuthedRequest'
responses:
'200':
$ref: '#/components/responses/GenericObject'
/posts/link_jira:
post:
tags:
- Posts
summary: Link a post to a Jira issue
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AuthedRequest'
responses:
'200':
$ref: '#/components/responses/GenericObject'
/posts/unlink_jira:
post:
tags:
- Posts
summary: Unlink a post from a Jira issue
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AuthedRequest'
responses:
'200':
$ref: '#/components/responses/GenericObject'
components:
schemas:
PagedAuthedRequest:
allOf:
- $ref: '#/components/schemas/AuthedRequest'
- type: object
properties:
limit:
type: integer
description: Page size limit.
skip:
type: integer
description: v1 skip-based pagination offset.
cursor:
type: string
description: v2 cursor-based pagination token.
GenericList:
type: object
properties:
hasMore:
type: boolean
cursor:
type: string
additionalProperties: true
GenericObject:
type: object
additionalProperties: true
AuthedRequest:
type: object
required:
- apiKey
properties:
apiKey:
type: string
description: Secret API key for the Canny company.
additionalProperties: true
responses:
GenericObject:
description: Single resource response.
content:
application/json:
schema:
$ref: '#/components/schemas/GenericObject'
GenericList:
description: Paginated list response.
content:
application/json:
schema:
$ref: '#/components/schemas/GenericList'
securitySchemes:
apiKeyBody:
type: apiKey
in: query
name: apiKey
description: 'Secret API key. Canny documents the key as a body parameter named
`apiKey`; it is modeled here as an `apiKey` security scheme.
'
apiKeyHeader:
type: apiKey
in: header
name: x-api-key