Coperniq reminders API
The reminders API from Coperniq — 4 operation(s) for reminders.
The reminders API from Coperniq — 4 operation(s) for reminders.
openapi: 3.1.0
info:
title: API Key accounts reminders API
version: 1.0.0
servers:
- url: https://api.coperniq.io/v1
description: Production server
tags:
- name: reminders
paths:
/projects/{projectId}/reminders:
get:
operationId: get-project-reminders
summary: Get Project Reminders
description: 'Retrieve reminders for a specific project.
Supports:
- Pagination (`page_size`, `page`)
- Date filtering (`updated_after`, `updated_before`)
- Sorting (`order_by`)
- Completion filter (`is_completed`)
'
tags:
- reminders
parameters:
- name: projectId
in: path
required: true
schema:
type: string
- name: page_size
in: query
description: Number of items per page (max 100)
required: false
schema:
type: integer
default: 20
- name: page
in: query
description: Page number (1-based)
required: false
schema:
type: integer
default: 1
- name: order_by
in: query
description: Sort order for results
required: false
schema:
$ref: '#/components/schemas/ProjectsProjectIdRemindersGetParametersOrderBy'
- name: updated_after
in: query
description: Filter items updated after this timestamp (ISO 8601)
required: false
schema:
type: string
format: date-time
- name: updated_before
in: query
description: Filter items updated before this timestamp (ISO 8601)
required: false
schema:
type: string
format: date-time
- name: is_completed
in: query
description: Filter by completion status
required: false
schema:
type: string
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: List of reminders for the project
content:
application/json:
schema:
$ref: '#/components/schemas/ReminderListResponse'
'400':
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/GetProjectRemindersRequestBadRequestError'
'401':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/GetProjectRemindersRequestUnauthorizedError'
post:
operationId: create-project-reminder
summary: Create Project Reminder
description: Create a new reminder associated with a project.
tags:
- reminders
parameters:
- name: projectId
in: path
required: true
schema:
type: string
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'201':
description: Reminder created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/Reminder'
'400':
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/CreateProjectReminderRequestBadRequestError'
'401':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/CreateProjectReminderRequestUnauthorizedError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ReminderCreate'
/opportunities/{opportunityId}/reminders:
get:
operationId: get-opportunity-reminders
summary: Get Opportunity Reminders
description: 'Retrieve reminders for a specific opportunity.
Supports:
- Pagination (`page_size`, `page`)
- Date filtering (`updated_after`, `updated_before`)
- Sorting (`order_by`)
- Completion filter (`is_completed`)
'
tags:
- reminders
parameters:
- name: opportunityId
in: path
required: true
schema:
type: string
- name: page_size
in: query
description: Number of items per page (max 100)
required: false
schema:
type: integer
default: 20
- name: page
in: query
description: Page number (1-based)
required: false
schema:
type: integer
default: 1
- name: order_by
in: query
description: Sort order for results
required: false
schema:
$ref: '#/components/schemas/OpportunitiesOpportunityIdRemindersGetParametersOrderBy'
- name: updated_after
in: query
description: Filter items updated after this timestamp (ISO 8601)
required: false
schema:
type: string
format: date-time
- name: updated_before
in: query
description: Filter items updated before this timestamp (ISO 8601)
required: false
schema:
type: string
format: date-time
- name: is_completed
in: query
description: Filter by completion status
required: false
schema:
type: string
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: List of reminders for the opportunity
content:
application/json:
schema:
$ref: '#/components/schemas/ReminderListResponse'
'400':
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/GetOpportunityRemindersRequestBadRequestError'
'401':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/GetOpportunityRemindersRequestUnauthorizedError'
post:
operationId: create-opportunity-reminder
summary: Create Opportunity Reminder
description: Create a new reminder associated with an opportunity.
tags:
- reminders
parameters:
- name: opportunityId
in: path
required: true
schema:
type: string
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'201':
description: Reminder created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/Reminder'
'400':
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/CreateOpportunityReminderRequestBadRequestError'
'401':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/CreateOpportunityReminderRequestUnauthorizedError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ReminderCreate'
/accounts/{accountId}/reminders:
get:
operationId: get-account-reminders
summary: Get Account Reminders
description: 'Retrieve reminders for a specific account.
Supports:
- Pagination (`page_size`, `page`)
- Date filtering (`updated_after`, `updated_before`)
- Sorting (`order_by`)
- Completion filter (`is_completed`)
'
tags:
- reminders
parameters:
- name: accountId
in: path
required: true
schema:
type: string
- name: page_size
in: query
description: Number of items per page (max 100)
required: false
schema:
type: integer
default: 20
- name: page
in: query
description: Page number (1-based)
required: false
schema:
type: integer
default: 1
- name: order_by
in: query
description: Sort order for results
required: false
schema:
$ref: '#/components/schemas/AccountsAccountIdRemindersGetParametersOrderBy'
- name: updated_after
in: query
description: Filter items updated after this timestamp (ISO 8601)
required: false
schema:
type: string
format: date-time
- name: updated_before
in: query
description: Filter items updated before this timestamp (ISO 8601)
required: false
schema:
type: string
format: date-time
- name: is_completed
in: query
description: Filter by completion status
required: false
schema:
type: string
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: List of reminders for the account
content:
application/json:
schema:
$ref: '#/components/schemas/ReminderListResponse'
'400':
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/GetAccountRemindersRequestBadRequestError'
'401':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/GetAccountRemindersRequestUnauthorizedError'
post:
operationId: create-account-reminder
summary: Create Account Reminder
description: Create a new reminder associated with an account.
tags:
- reminders
parameters:
- name: accountId
in: path
required: true
schema:
type: string
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'201':
description: Reminder created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/Reminder'
'400':
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/CreateAccountReminderRequestBadRequestError'
'401':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/CreateAccountReminderRequestUnauthorizedError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ReminderCreate'
/reminders/{reminderId}:
get:
operationId: get-reminder
summary: Get Reminder
description: Retrieve a specific reminder by ID.
tags:
- reminders
parameters:
- name: reminderId
in: path
required: true
schema:
type: string
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Reminder details
content:
application/json:
schema:
$ref: '#/components/schemas/Reminder'
'401':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/GetReminderRequestUnauthorizedError'
'404':
description: Resource not found
content:
application/json:
schema:
$ref: '#/components/schemas/GetReminderRequestNotFoundError'
patch:
operationId: update-reminder
summary: Update Reminder
description: Update an existing reminder.
tags:
- reminders
parameters:
- name: reminderId
in: path
required: true
schema:
type: string
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Reminder updated successfully
content:
application/json:
schema:
$ref: '#/components/schemas/Reminder'
'400':
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateReminderRequestBadRequestError'
'401':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateReminderRequestUnauthorizedError'
'404':
description: Resource not found
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateReminderRequestNotFoundError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ReminderUpdate'
delete:
operationId: delete-reminder
summary: Delete Reminder
description: Delete a specific reminder by ID.
tags:
- reminders
parameters:
- name: reminderId
in: path
required: true
schema:
type: string
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful response
'401':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteReminderRequestUnauthorizedError'
'404':
description: Resource not found
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteReminderRequestNotFoundError'
components:
schemas:
GetProjectRemindersRequestBadRequestError:
type: object
properties:
message:
type: string
code:
$ref: '#/components/schemas/ProjectsProjectIdRemindersGetResponsesContentApplicationJsonSchemaCode'
field:
type: string
description: Field that caused the validation error (if applicable)
title: GetProjectRemindersRequestBadRequestError
UpdateReminderRequestUnauthorizedError:
type: object
properties:
message:
type: string
code:
$ref: '#/components/schemas/RemindersReminderIdPatchResponsesContentApplicationJsonSchemaCode'
title: UpdateReminderRequestUnauthorizedError
DeleteReminderRequestUnauthorizedError:
type: object
properties:
message:
type: string
code:
$ref: '#/components/schemas/RemindersReminderIdDeleteResponsesContentApplicationJsonSchemaCode'
title: DeleteReminderRequestUnauthorizedError
ReminderCreateType:
type: string
enum:
- CALL
- EMAIL
- IN_PERSON
- VIRTUAL
- DEADLINE
- OTHER
description: Reminder type
title: ReminderCreateType
GetAccountRemindersRequestUnauthorizedError:
type: object
properties:
message:
type: string
code:
$ref: '#/components/schemas/AccountsAccountIdRemindersGetResponsesContentApplicationJsonSchemaCode'
title: GetAccountRemindersRequestUnauthorizedError
GetOpportunityRemindersRequestUnauthorizedError:
type: object
properties:
message:
type: string
code:
$ref: '#/components/schemas/OpportunitiesOpportunityIdRemindersGetResponsesContentApplicationJsonSchemaCode'
title: GetOpportunityRemindersRequestUnauthorizedError
GetReminderRequestUnauthorizedError:
type: object
properties:
message:
type: string
code:
$ref: '#/components/schemas/RemindersReminderIdGetResponsesContentApplicationJsonSchemaCode'
title: GetReminderRequestUnauthorizedError
RemindersReminderIdPatchResponsesContentApplicationJsonSchemaCode:
type: string
enum:
- NOT_FOUND
title: RemindersReminderIdPatchResponsesContentApplicationJsonSchemaCode
GetAccountRemindersRequestBadRequestError:
type: object
properties:
message:
type: string
code:
$ref: '#/components/schemas/AccountsAccountIdRemindersGetResponsesContentApplicationJsonSchemaCode'
field:
type: string
description: Field that caused the validation error (if applicable)
title: GetAccountRemindersRequestBadRequestError
UpdateReminderRequestNotFoundError:
type: object
properties:
message:
type: string
code:
$ref: '#/components/schemas/RemindersReminderIdPatchResponsesContentApplicationJsonSchemaCode'
title: UpdateReminderRequestNotFoundError
AccountsAccountIdRemindersGetResponsesContentApplicationJsonSchemaCode:
type: string
enum:
- UNAUTHORIZED
title: AccountsAccountIdRemindersGetResponsesContentApplicationJsonSchemaCode
OpportunitiesOpportunityIdRemindersPostResponsesContentApplicationJsonSchemaCode:
type: string
enum:
- UNAUTHORIZED
title: OpportunitiesOpportunityIdRemindersPostResponsesContentApplicationJsonSchemaCode
ProjectsProjectIdRemindersGetResponsesContentApplicationJsonSchemaCode:
type: string
enum:
- UNAUTHORIZED
title: ProjectsProjectIdRemindersGetResponsesContentApplicationJsonSchemaCode
ReminderListResponse:
type: object
properties:
reminders:
type: array
items:
$ref: '#/components/schemas/Reminder'
totalCount:
type: integer
required:
- reminders
- totalCount
title: ReminderListResponse
AccountsAccountIdRemindersGetParametersOrderBy:
type: string
enum:
- asc
- desc
default: asc
title: AccountsAccountIdRemindersGetParametersOrderBy
GetReminderRequestNotFoundError:
type: object
properties:
message:
type: string
code:
$ref: '#/components/schemas/RemindersReminderIdGetResponsesContentApplicationJsonSchemaCode'
title: GetReminderRequestNotFoundError
CreateAccountReminderRequestBadRequestError:
type: object
properties:
message:
type: string
code:
$ref: '#/components/schemas/AccountsAccountIdRemindersPostResponsesContentApplicationJsonSchemaCode'
field:
type: string
description: Field that caused the validation error (if applicable)
title: CreateAccountReminderRequestBadRequestError
RemindersReminderIdDeleteResponsesContentApplicationJsonSchemaCode:
type: string
enum:
- NOT_FOUND
title: RemindersReminderIdDeleteResponsesContentApplicationJsonSchemaCode
ReminderUpdate:
type: object
properties:
title:
type: string
assigneeId:
type: integer
description:
type:
- string
- 'null'
dueDate:
type:
- string
- 'null'
format: date-time
isCompleted:
type: boolean
type:
$ref: '#/components/schemas/ReminderUpdateType'
title: ReminderUpdate
CreateOpportunityReminderRequestUnauthorizedError:
type: object
properties:
message:
type: string
code:
$ref: '#/components/schemas/OpportunitiesOpportunityIdRemindersPostResponsesContentApplicationJsonSchemaCode'
title: CreateOpportunityReminderRequestUnauthorizedError
OpportunitiesOpportunityIdRemindersGetResponsesContentApplicationJsonSchemaCode:
type: string
enum:
- UNAUTHORIZED
title: OpportunitiesOpportunityIdRemindersGetResponsesContentApplicationJsonSchemaCode
Reminder:
type: object
properties:
id:
type: integer
title:
type: string
description:
type:
- string
- 'null'
type:
oneOf:
- $ref: '#/components/schemas/ReminderType'
- type: 'null'
dueDate:
type:
- string
- 'null'
format: date-time
isCompleted:
type: boolean
completedAt:
type:
- string
- 'null'
format: date-time
assigneeId:
type:
- integer
- 'null'
projectId:
type:
- integer
- 'null'
description: Present when the reminder belongs to a project.
opportunityId:
type:
- integer
- 'null'
description: Present when the reminder belongs to an opportunity.
accountId:
type:
- integer
- 'null'
description: Present when the reminder belongs to an account.
createdBy:
type:
- integer
- 'null'
createdAt:
type: string
format: date-time
updatedAt:
type: string
format: date-time
description: 'Exactly one of `projectId`, `opportunityId`, or `accountId` will be
present, depending on which parent resource the reminder belongs to.
'
title: Reminder
ReminderCreate:
type: object
properties:
title:
type: string
description: Reminder title
assigneeId:
type: integer
description: ID of the user assigned to this reminder
description:
type: string
description: Optional description
dueDate:
type: string
format: date-time
description: ISO 8601 due date
isCompleted:
type: boolean
description: Whether the reminder is completed
type:
$ref: '#/components/schemas/ReminderCreateType'
description: Reminder type
required:
- title
- assigneeId
title: ReminderCreate
UpdateReminderRequestBadRequestError:
type: object
properties:
message:
type: string
code:
$ref: '#/components/schemas/RemindersReminderIdPatchResponsesContentApplicationJsonSchemaCode'
field:
type: string
description: Field that caused the validation error (if applicable)
title: UpdateReminderRequestBadRequestError
GetOpportunityRemindersRequestBadRequestError:
type: object
properties:
message:
type: string
code:
$ref: '#/components/schemas/OpportunitiesOpportunityIdRemindersGetResponsesContentApplicationJsonSchemaCode'
field:
type: string
description: Field that caused the validation error (if applicable)
title: GetOpportunityRemindersRequestBadRequestError
CreateProjectReminderRequestBadRequestError:
type: object
properties:
message:
type: string
code:
$ref: '#/components/schemas/ProjectsProjectIdRemindersPostResponsesContentApplicationJsonSchemaCode'
field:
type: string
description: Field that caused the validation error (if applicable)
title: CreateProjectReminderRequestBadRequestError
ProjectsProjectIdRemindersPostResponsesContentApplicationJsonSchemaCode:
type: string
enum:
- UNAUTHORIZED
title: ProjectsProjectIdRemindersPostResponsesContentApplicationJsonSchemaCode
CreateProjectReminderRequestUnauthorizedError:
type: object
properties:
message:
type: string
code:
$ref: '#/components/schemas/ProjectsProjectIdRemindersPostResponsesContentApplicationJsonSchemaCode'
title: CreateProjectReminderRequestUnauthorizedError
GetProjectRemindersRequestUnauthorizedError:
type: object
properties:
message:
type: string
code:
$ref: '#/components/schemas/ProjectsProjectIdRemindersGetResponsesContentApplicationJsonSchemaCode'
title: GetProjectRemindersRequestUnauthorizedError
OpportunitiesOpportunityIdRemindersGetParametersOrderBy:
type: string
enum:
- asc
- desc
default: asc
title: OpportunitiesOpportunityIdRemindersGetParametersOrderBy
ProjectsProjectIdRemindersGetParametersOrderBy:
type: string
enum:
- asc
- desc
default: asc
title: ProjectsProjectIdRemindersGetParametersOrderBy
DeleteReminderRequestNotFoundError:
type: object
properties:
message:
type: string
code:
$ref: '#/components/schemas/RemindersReminderIdDeleteResponsesContentApplicationJsonSchemaCode'
title: DeleteReminderRequestNotFoundError
RemindersReminderIdGetResponsesContentApplicationJsonSchemaCode:
type: string
enum:
- NOT_FOUND
title: RemindersReminderIdGetResponsesContentApplicationJsonSchemaCode
ReminderType:
type: string
enum:
- CALL
- EMAIL
- IN_PERSON
- VIRTUAL
- DEADLINE
- OTHER
title: ReminderType
CreateOpportunityReminderRequestBadRequestError:
type: object
properties:
message:
type: string
code:
$ref: '#/components/schemas/OpportunitiesOpportunityIdRemindersPostResponsesContentApplicationJsonSchemaCode'
field:
type: string
description: Field that caused the validation error (if applicable)
title: CreateOpportunityReminderRequestBadRequestError
CreateAccountReminderRequestUnauthorizedError:
type: object
properties:
message:
type: string
code:
$ref: '#/components/schemas/AccountsAccountIdRemindersPostResponsesContentApplicationJsonSchemaCode'
title: CreateAccountReminderRequestUnauthorizedError
ReminderUpdateType:
type: string
enum:
- CALL
- EMAIL
- IN_PERSON
- VIRTUAL
- DEADLINE
- OTHER
title: ReminderUpdateType
AccountsAccountIdRemindersPostResponsesContentApplicationJsonSchemaCode:
type: string
enum:
- UNAUTHORIZED
title: AccountsAccountIdRemindersPostResponsesContentApplicationJsonSchemaCode
securitySchemes:
BasicAuth:
type: http
scheme: basic