Remote Invoice Schedules API
The Invoice Schedules API from Remote — 2 operation(s) for invoice schedules.
The Invoice Schedules API from Remote — 2 operation(s) for invoice schedules.
openapi: 3.0.0
info:
title: Remote Address Details Invoice Schedules API
version: 0.1.0
servers:
- url: https://gateway.remote.com/
variables: {}
- url: https://gateway.remote-sandbox.com/
variables: {}
security:
- OAuth2: []
tags:
- name: Invoice Schedules
paths:
/v1/contractor-invoice-schedules/{id}:
get:
callbacks: {}
deprecated: false
description: 'Shows a single Contractor Invoice Schedule record
## Scopes
| Category | Read only Scope | Write only Scope (read access implicit) |
|---|---|---|
| Manage invoices (`invoices`) | View invoices (`invoices:read`) | Manage invoices (`invoices:write`) |
'
operationId: get_v1_contractor-invoice-schedules_id
parameters:
- description: Resource unique identifier
example: a6ef7b64-5c02-4ce2-a8c8-e17a99724365
in: path
name: id
required: true
schema:
$ref: '#/components/schemas/UuidSlug'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ContractorInvoiceScheduleResponse'
description: Success
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
description: Bad Request
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedResponse'
description: Unauthorized
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenResponse'
description: Forbidden
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundResponse'
description: Not Found
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/UnprocessableEntityResponse'
description: Unprocessable Entity
'429':
content:
application/json:
schema:
$ref: '#/components/schemas/TooManyRequestsResponse'
description: Unprocessable Entity
security:
- CustomerAPIToken:
- https://gateway.remote.com/company.manage
- invoices:read
- invoices:write
- invoices
- all:write
- all:read
OAuth2AuthorizationCode:
- https://gateway.remote.com/company.manage
- invoices:read
- invoices:write
- invoices
- all:write
- all:read
summary: Show Contractor Invoice Schedule
tags:
- Invoice Schedules
patch:
callbacks: {}
deprecated: false
description: 'Updates a contractor invoice schedule record
## Scopes
| Category | Read only Scope | Write only Scope (read access implicit) |
|---|---|---|
| Manage invoices (`invoices`) | - | Manage invoices (`invoices:write`) |
'
operationId: patch_v1_contractor-invoice-schedules_id (2)
parameters:
- description: Resource unique identifier
example: b3e8b42c-830a-48e5-abb7-39fdbae2a9fe
in: path
name: id
required: true
schema:
$ref: '#/components/schemas/UuidSlug'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateScheduleContractorInvoiceParams'
description: Update parameters
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ContractorInvoiceScheduleResponse'
description: Success
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedResponse'
description: Unauthorized
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenResponse'
description: Forbidden
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundResponse'
description: Not Found
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/UnprocessableEntityResponse'
description: Unprocessable Entity
security:
- CustomerAPIToken:
- https://gateway.remote.com/company.manage
- invoices:write
- invoices
- all:write
OAuth2AuthorizationCode:
- https://gateway.remote.com/company.manage
- invoices:write
- invoices
- all:write
summary: Updates Contractor Invoice Schedule
tags:
- Invoice Schedules
put:
callbacks: {}
deprecated: false
description: 'Updates a contractor invoice schedule record
## Scopes
| Category | Read only Scope | Write only Scope (read access implicit) |
|---|---|---|
| Manage invoices (`invoices`) | - | Manage invoices (`invoices:write`) |
'
operationId: patch_v1_contractor-invoice-schedules_id
parameters:
- description: Resource unique identifier
example: 5a10e9c3-97c9-4f8a-88f3-274842726d32
in: path
name: id
required: true
schema:
$ref: '#/components/schemas/UuidSlug'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateScheduleContractorInvoiceParams'
description: Update parameters
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ContractorInvoiceScheduleResponse'
description: Success
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedResponse'
description: Unauthorized
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenResponse'
description: Forbidden
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundResponse'
description: Not Found
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/UnprocessableEntityResponse'
description: Unprocessable Entity
security:
- CustomerAPIToken:
- https://gateway.remote.com/company.manage
- invoices:write
- invoices
- all:write
OAuth2AuthorizationCode:
- https://gateway.remote.com/company.manage
- invoices:write
- invoices
- all:write
summary: Updates Contractor Invoice Schedule
tags:
- Invoice Schedules
/v1/contractor-invoice-schedules:
get:
callbacks: {}
deprecated: false
description: 'Lists Contractor Invoice Schedule records.
## Scopes
| Category | Read only Scope | Write only Scope (read access implicit) |
|---|---|---|
| Manage invoices (`invoices`) | - | Manage invoices (`invoices:write`) |
'
operationId: get_v1_contractor-invoice-schedules
parameters:
- description: Filters contractor invoice schedules by start date greater than or equal to the value.
example: '2021-01-01'
in: query
name: start_date_from
required: false
schema:
$ref: '#/components/schemas/Date'
- description: Filters contractor invoice schedules by start date less than or equal to the value.
example: '2021-12-31'
in: query
name: start_date_to
required: false
schema:
$ref: '#/components/schemas/Date'
- description: Filters contractor invoice schedules by next invoice date greater than or equal to the value.
example: '2021-01-01'
in: query
name: next_invoice_date_from
required: false
schema:
$ref: '#/components/schemas/Date'
- description: Filters contractor invoice schedules by next invoice date less than or equal to the value.
example: '2021-12-31'
in: query
name: next_invoice_date_to
required: false
schema:
$ref: '#/components/schemas/Date'
- description: Filters contractor invoice schedules by status matching the value.
example: active
in: query
name: status
required: false
schema:
$ref: '#/components/schemas/ContractorInvoiceScheduleStatus'
- description: Filters contractor invoice schedules by employment id matching the value.
example: 25a1b787-cc49-4b30-852e-907ebc7a6b3b
in: query
name: employment_id
required: false
schema:
$ref: '#/components/schemas/UuidSlug'
- description: Filters contractor invoice schedules by periodicity matching the value.
example: monthly
in: query
name: periodicity
required: false
schema:
$ref: '#/components/schemas/ContractorInvoiceSchedulePeriodicity'
- description: Filters contractor invoice schedules by currency matching the value.
example: USD
in: query
name: currency
required: false
schema:
type: string
- description: Field to sort by
example: number
in: query
name: sort_by
required: false
schema:
enum:
- number
- total_amount
- next_invoice_at
- start_date
- nr_occurrences
type: string
- description: Sort order
example: asc
in: query
name: order
required: false
schema:
enum:
- asc
- desc
type: string
- description: Starts fetching records after the given page
example: 1
in: query
name: page
required: false
schema:
default: 1
minimum: 1
type: integer
- description: Number of items per page
example: 20
in: query
name: page_size
required: false
schema:
default: 20
minimum: 1
type: integer
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ListContractorInvoiceSchedulesResponse'
description: Success
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedResponse'
description: Unauthorized
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenResponse'
description: Forbidden
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundResponse'
description: Not Found
security:
- CustomerAPIToken:
- https://gateway.remote.com/company.manage
- invoices:write
- invoices
- all:write
OAuth2AuthorizationCode:
- https://gateway.remote.com/company.manage
- invoices:write
- invoices
- all:write
summary: List Contractor Invoice Schedules
tags:
- Invoice Schedules
post:
callbacks: {}
deprecated: false
description: 'Creates many invoice schedules records.
It''s supposed to return two lists: one containing created records, and another one containing the schedules that failed to be inserted.
## Scopes
| Category | Read only Scope | Write only Scope (read access implicit) |
|---|---|---|
| Manage invoices (`invoices`) | - | Manage invoices (`invoices:write`) |
'
operationId: post_v1_contractor-invoice-schedules
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/BulkContractorInvoiceScheduleCreateParams'
description: Bulk creation payload
required: true
responses:
'201':
content:
application/json:
schema:
additionalProperties: false
description: Response containing the lists of succeeded and failed schedules.
example:
data:
failures: []
successes:
- currency: BRL
employment_id: 663e0b79-c893-45ff-a1b2-f6dcabc098b5
id: 663e0b79-c893-45ff-a1b2-f6dcabc098b5
items:
- amount: 5000
description: Description
note: A note to make it clear why schedule is needed.
nr_occurrences: 10
number: CIS0001
periodicity: monthly
start_date: '2024-06-01'
properties:
data:
additionalProperties: false
properties:
failures:
items:
$ref: '#/components/schemas/ContractorInvoiceScheduleCreateResponseFailure'
type: array
successes:
items:
$ref: '#/components/schemas/ContractorInvoiceScheduleCreateResponseSuccess'
type: array
required:
- successes
- failures
type: object
required:
- data
title: BulkContractorInvoiceScheduleCreateResponse
type: object
description: All entries have been created
'207':
content:
application/json:
schema:
additionalProperties: false
description: Response containing the lists of succeeded and failed schedules.
example:
data:
failures:
- currency: USD
employment_id: 663e0b79-c893-45ff-a1b2-f6dcabc098b5
errors:
employment_id:
- not found
items:
- amount: 5000
description: Description
note: Contractor payment schedules.
nr_occurrences: 15
number: XYZ0001
periodicity: bi_weekly
start_date: '2024-06-01'
successes:
- currency: BRL
employment_id: 663e0b79-c893-45ff-a1b2-f6dcabc098b5
id: 663e0b79-c893-45ff-a1b2-f6dcabc098b5
items:
- amount: 5000
description: Description
note: A note to make it clear why schedule is needed.
nr_occurrences: 10
number: CIS0001
periodicity: monthly
start_date: '2024-06-01'
properties:
data:
additionalProperties: false
properties:
failures:
items:
$ref: '#/components/schemas/ContractorInvoiceScheduleCreateResponseFailure'
type: array
successes:
items:
$ref: '#/components/schemas/ContractorInvoiceScheduleCreateResponseSuccess'
type: array
required:
- successes
- failures
type: object
required:
- data
title: BulkContractorInvoiceScheduleCreateResponse
type: object
description: Multiple successes and failures
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenResponse'
description: Forbidden
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundResponse'
description: Not Found
'422':
content:
application/json:
schema:
additionalProperties: false
description: Response containing the lists of succeeded and failed schedules.
example:
data:
failures:
- currency: USD
employment_id: 663e0b79-c893-45ff-a1b2-f6dcabc098b5
errors:
employment_id:
- not found
items:
- amount: 5000
description: Description
note: Contractor payment schedules.
nr_occurrences: 15
number: XYZ0001
periodicity: bi_weekly
start_date: '2024-06-01'
successes: []
properties:
data:
additionalProperties: false
properties:
failures:
items:
$ref: '#/components/schemas/ContractorInvoiceScheduleCreateResponseFailure'
type: array
successes:
items:
$ref: '#/components/schemas/ContractorInvoiceScheduleCreateResponseSuccess'
type: array
required:
- successes
- failures
type: object
required:
- data
title: BulkContractorInvoiceScheduleCreateResponse
type: object
description: All entries had failed
security:
- CustomerAPIToken:
- https://gateway.remote.com/company.manage
- invoices:write
- invoices
- all:write
OAuth2AuthorizationCode:
- https://gateway.remote.com/company.manage
- invoices:write
- invoices
- all:write
summary: Create Contractor Invoice Schedules
tags:
- Invoice Schedules
components:
schemas:
ParameterError:
example:
code: invalid_param
message: Invalid parameter
param: employment_id
properties:
code:
description: An error code that describes the nature of the error.
type: string
message:
description: A developer friendly error message that gives details on what the error was and how it may be remedied.
type: string
param:
description: The parameter that lead to the error message.
type: string
required:
- code
- message
- param
title: ParameterError
type: object
Date:
description: UTC date in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format
example: '2021-07-01'
format: date
title: Date
type: string
ContractorInvoiceSchedule:
additionalProperties: false
description: Contractor Invoice Schedule.
example:
currency: BRL
employment_id: 3a4b5c6d-7e8f-9a0b-1c2d-3e4f5a6b7c8d
id: 663e0b79-c893-45ff-a1b2-f6dcabc098b5
items:
- amount: 5000
description: Description
next_invoice_at: '2024-06-15T00:00:00Z'
note: Mobile developer payment.
nr_occurrences: 10
number: ABC123
periodicity: semi_monthly
start_date: '2024-06-01'
status: active
total_amount: 500000
properties:
currency:
$ref: '#/components/schemas/CurrencyCode'
employment_id:
description: Employment identifier.
example: 3a4b5c6d-7e8f-9a0b-1c2d-3e4f5a6b7c8d
format: uuid
type: string
id:
description: Schedule identifier.
example: 663e0b79-c893-45ff-a1b2-f6dcabc098b5
format: uuid
title: ScheduleID
type: string
items:
description: List of invoice items that composes the overall invoice amount.
items:
$ref: '#/components/schemas/ContractorInvoiceScheduleItem'
type: array
next_invoice_at:
description: Date time which next invoice will be generated.
example: '2024-06-15T00:00:00Z'
format: datetime
nullable: true
type: string
note:
description: Custom defined note.
example: Mobile developer payment.
nullable: true
type: string
nr_occurrences:
description: Count of remaining invoices that should be generated.
example: 10
nullable: true
type: integer
number:
description: Invoice identifier.
example: ABC123
nullable: true
type: string
periodicity:
$ref: '#/components/schemas/ContractorInvoiceSchedulePeriodicity'
start_date:
description: Date which invoices generation will start.
example: '2024-06-01'
format: date
type: string
status:
$ref: '#/components/schemas/ContractorInvoiceScheduleStatus'
total_amount:
description: Overall amount that is calculated by summing all invoice items.
example: 500000
type: integer
required:
- id
- employment_id
- start_date
- periodicity
- status
- currency
- items
- total_amount
title: ContractorInvoiceSchedule
type: object
ListContractorInvoiceSchedulesResponse:
description: Paginated response schema listing all Contractor Invoice Schedules.
example:
contractor_invoice_schedules:
- currency: BRL
employment_id: 3a4b5c6d-7e8f-9a0b-1c2d-3e4f5a6b7c8d
id: 663e0b79-c893-45ff-a1b2-f6dcabc098b5
items:
- amount: 5000
description: Description
next_invoice_at: '2024-06-15T00:00:00Z'
note: Mobile developer payment.
nr_occurrences: 10
number: ABC123
periodicity: semi_monthly
start_date: '2024-06-01'
status: active
total_amount: 500000
current_page: 1
total_count: 1
total_pages: 1
properties:
data:
properties:
contractor_invoice_schedules:
items:
$ref: '#/components/schemas/ContractorInvoiceSchedule'
type: array
current_page:
description: The current page among all of the total_pages
type: integer
total_count:
description: The total number of records in the result
type: integer
total_pages:
description: The total number of pages the user can go through
type: integer
type: object
title: ListContractorInvoiceSchedulesResponse
type: object
ContractorInvoiceScheduleCreateResponseFailure:
additionalProperties: false
description: Set of invoice schedule attributes with failed validation.
example:
currency: USD
employment_id: 663e0b79-c893-45ff-a1b2-f6dcabc098b5
errors:
employment_id:
- not found
items:
- amount: 5000
description: Description
note: Contractor payment schedules.
nr_occurrences: 15
number: XYZ0001
periodicity: bi_weekly
start_date: '2024-06-01'
properties:
currency:
$ref: '#/components/schemas/CurrencyCode'
employment_id:
description: Employment identifier
example: 663e0b79-c893-45ff-a1b2-f6dcabc098b5
format: uuid
type: string
errors:
additionalProperties: false
properties:
currency:
items:
type: string
type: array
employment_id:
items:
type: string
type: array
items:
items:
additionalProperties: false
properties:
amount:
items:
type: string
type: array
description:
items:
type: string
type: array
type: object
type: array
note:
items:
type: string
type: array
nr_occurrences:
items:
type: string
type: array
number:
items:
type: string
type: array
periodicity:
items:
type: string
type: array
start_date:
items:
type: string
type: array
type: object
items:
description: List of invoice items that composes the overall invoice amount.
example:
- amount: 5000
description: Description
items:
$ref: '#/components/schemas/ContractorInvoiceScheduleItem'
maxItems: 10
minItems: 1
type: array
note:
description: Custom defined note.
example: A note to make it clear why schedule is needed.
type: string
nr_occurrences:
description: Count of invoices that should be generated during schedule lifetime.
example: 10
minimum: 1
type: integer
number:
description: Invoice identifier.
example: CIS0001
maxLength: 10
minLength: 1
type: string
periodicity:
$ref: '#/components/schemas/ContractorInvoiceSchedulePeriodicity'
start_date:
description: Date of the first contractor invoice generation.
example: '2024-06-01'
format: date
type: string
required:
- employment_id
- currency
- start_date
- periodicity
- items
- errors
title: ContractorInvoiceScheduleCreateResponseFailure
type: object
UnauthorizedResponse:
description: Returned when the request does not include valid authentication credentials. Ensure you are passing a valid OAuth2 access token or API token in the Authorization header.
example:
message: Unauthorized
properties:
message:
pattern: Unauthorized
type: string
required:
- message
title: UnauthorizedResponse
type: object
UpdateScheduleContractorInvoiceParams:
additionalProperties: false
description: Payload shape used to update invoice schedules.
example:
currency: USD
items:
- amount: 5000
description: Description
note: Contractor invoice note
nr_occurrences: 8
number: Num321
periodicity: monthly
start_date: '2021-07-01'
properties:
currency:
$ref: '#/components/schemas/CurrencyCode'
items:
description: List of invoice items that composes the overall invoice amount.
items:
$ref: '#/components/schemas/ContractorInvoiceScheduleItem'
type: array
note:
description: Custom defined note.
nullable: true
type: string
nr_occurrences:
description: Count of remaining invoices that should be generated.
nullable: true
type: integer
number:
description: Invoice identifier.
nullable: true
type: string
periodicity:
$ref: '#/components/schemas/ContractorInvoiceSchedulePeriodicity'
start_date:
$ref: '#/components/schemas/Date'
title: UpdateScheduleContractorInvoiceParams
type: object
UnprocessableEntityResponse:
anyOf:
- properties:
errors:
type: object
required:
- errors
type: object
- properties:
message:
oneOf:
- type: string
- $ref: '#/components/schemas/ParameterError'
- items:
$ref: '#/components/schemas/ParameterError'
title: ParameterErrors
type: array
- $ref: '#/components/schemas/ActionError'
- items:
$ref: '#/components/schemas/ActionError'
title: ActionErrors
type: array
required:
- message
type: object
example:
errors:
some_field:
- is invalid
title: UnprocessableEntityResponse
type: object
CurrencyCode:
description: Currency code of the SWIFT fee. Only present when processing_fee is set.
example: BRL
maxLength: 3
minLength: 3
nullable: true
title: CurrencyCode
type: string
BadRequestResponse:
description: Returned when the request is malformed or contains invalid parameters. The message may be a simple string or a structured object with a code and detailed message.
example:
message: invalid {resource}
oneOf:
- properties:
message:
description: A human-readable error message describing what was wrong with the request.
type: string
required:
- message
type: object
- properties:
message:
properties:
code:
type: string
message:
type: string
required:
- code
- message
type: object
type: object
title: BadRequestResponse
type: object
ActionError:
properties:
action:
description: The action that lead to the error message.
type: string
code:
description: An error code that describes the nature of the error.
type: string
message:
description: A developer friendly error message that gives details on what the error was and how it may be remedied.
type: string
required:
- code
- message
- action
title: ActionError
type: object
ContractorInvoiceScheduleCreateResponseSuccess:
additionalProperties: false
description: Set of invoice schedule attributes that were successfully created.
example:
currency: BRL
employment_id: 663e0b79-c893-45ff-a1b2-f6dcabc098b5
id: 663e0b79-c893-45ff-a1b2-f6dcabc098b5
items:
- amount: 5000
description: Description
note: A note to make it clear why schedule is needed.
nr_occurrences: 10
number: CIS0001
periodicity: monthly
start_date: '2024-06-01'
properties:
currency:
$ref: '#/components/schemas/CurrencyCode'
employment_id:
description: Employment identifier
example: 663e0b79-c893-45ff-a1b2-f6dcabc098b5
format: uuid
type: string
id:
$ref: '#/components/schemas/UuidSlug'
items:
description: List of invoice items that composes the overall invoice amount.
example:
- amount: 5000
description: Description
items:
# --- truncated at 32 KB (52 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/remote/refs/heads/main/openapi/remote-invoice-schedules-api-openapi.yml