openapi: 3.0.3
info:
title: GorillaDesk Company Note API
description: '# Introduction
The GorillaDesk API is organized around REST.
Our API has predictable resource-oriented URLs, accepts JSON-encoded and form-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs..
# Authentication
The GorillaDesk API uses Token authentication. API keys are per-company and can be generated and deleted in the [Addons page](https://beta.gorilladesk.com/addons/api).
# Rate Limits
We enforce API call rate limits to protect our infrastructure from excessive request rates, to keep GorillaDesk fast and stable for everyone. These limits are high enough that typical API workflows aren''t affected. However, please do code your integration to follow the rule below:
**If you receive a response status code of 429 (Too Many Requests), please sleep/pause for the number of seconds specified by the rate_reset value before making additional requests to that endpoint.**
Rate limits are enforced per endpoint group. Endpoint groups are used to provide more granular control by grouping endpoint URL paths and methods (e.g. GET, PUT, etc.) together. For instance, GETs to /v1/users/ and POSTs/PUTs to /v1/customers/ may be counted as two different API groups. This allows us to offer a higher limit on lightweight requests than we would be able to on more resource intensive request types.
API responses will have the following headers to provide rate limiting statistics about the limit it''s closest to hitting.
- `x-rate-limit-limit`: Request limit enforced for this endpoint, some endpoints may allow bursting over this limit
- `x-rate-limit-remaining`: Requests left in the enforcement window
- `x-rate-limit-reset`: Seconds remaining before this enforcement window ends (as a decimal).
'
x-logo:
url: https://cdn.gorilladesk.com/assets/images/gorilladesk.png
altText: GorillaDesk logo
servers:
- url: https://api.gorilladesk.com/v1
security:
- Bearer: []
tags:
- name: Note
paths:
/customers/{customerId}/notes:
post:
summary: Create a customer note
tags:
- Note
parameters:
- in: path
name: customerId
description: Customer Id
required: true
schema:
type: string
requestBody:
content:
multipart/form-data:
schema:
type: object
required:
- content
properties:
content:
type: string
example: Lorem, ipsum dolor sit amet consectetur adipisicing elit
notify_users:
type: array
description: List of user Ids
items:
type: string
example: jVepBjQp0E
attachments:
type: array
description: 'Files to upload.
Accepted file types: image, audio, video, pdf.
Limit to 5 files and maximum 10MB per file.
'
items:
type: string
format: binary
required: true
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
id:
type: string
example: 5aXrGzNyLY
'401':
$ref: '#/paths/~1users/get/responses/401'
'403':
$ref: '#/paths/~1users/get/responses/403'
'404':
$ref: '#/paths/~1users~1%7BuserId%7D/get/responses/404'
components:
securitySchemes:
Bearer:
type: http
scheme: bearer