Shop-Ware Contacts API
The Contacts API from Shop-Ware — 2 operation(s) for contacts.
The Contacts API from Shop-Ware — 2 operation(s) for contacts.
openapi: 3.0.1
info:
title: API V1 API Partners Contacts API
version: v1
contact:
name: API Support
email: support@shop-ware.com
security:
- api_partner_id: []
api_secret: []
tags:
- name: Contacts
paths:
/api/v1/tenants/{tenant_id}/customers/{customer_id}/contacts:
parameters:
- name: tenant_id
in: path
required: true
example: '1'
schema:
type: string
- name: customer_id
in: path
description: Customer id must reference to customer with 'corporate' type.
required: true
example: '1'
schema:
type: string
- name: X-Api-Partner-Id
in: header
required: true
example: 8b2b9d74-1e3c-4259-b464-09a088ca2c3e
schema:
type: string
- name: X-Api-Secret
in: header
required: true
example: R3n6kpzKwAG5RxgiD9SYzSUudyd_vs7MDCxMsXG9Vtk
schema:
type: string
get:
summary: Get a list of customer's contacts
tags:
- Contacts
parameters:
- name: page
in: query
required: false
example: '1'
schema:
type: integer
- name: per_page
in: query
required: false
example: '30'
schema:
type: integer
- name: updated_after
in: query
required: false
format: date-time
description: Filter response to only include records updated after a given time
example: 2022-10-24T12%3A00%3A00%2B08%3A00
schema:
type: string
responses:
'200':
description: successful
content:
application/json:
examples:
successful:
value:
results:
- id: 2
created_at: '2026-06-09T14:22:02Z'
updated_at: '2026-06-09T14:22:02Z'
first_name: First Name
last_name: Last Name
email: test@email.com
personnel: Test
phone_number: '+17722271221'
show_on_ro: true
- id: 1
created_at: '2026-06-09T14:22:02Z'
updated_at: '2026-06-09T14:22:02Z'
first_name: Firstname9
last_name: Lastname9
email: test_user_contact_email13@example.com
personnel: null
phone_number: null
show_on_ro: false
limit: 2
limited: false
total_count: 2
current_page: 1
total_pages: 1
schema:
type: object
properties:
results:
type: array
items:
type: object
properties:
id:
type: integer
description: Unique identifier of this record.
first_name:
type: string
description: First name,
last_name:
type: string
nullable: true
description: Last name.
email:
type: string
format: email
nullable: true
description: Email.
personnel:
type: string
nullable: true
description: Personnel.
phone_number:
type: string
nullable: true
description: Phone number.
show_on_ro:
type: boolean
nullable: true
description: Defines whether contact is shows on Repair Order.
created_at:
type: string
format: date-time
description: Date and time when record was created.
updated_at:
type: string
format: date-time
description: Date and time when record was last updated.
limit:
type: integer
limited:
type: boolean
total_count:
type: integer
current_page:
type: integer
total_pages:
type: integer
post:
summary: Create new contact for customer
tags:
- Contacts
parameters: []
responses:
'201':
description: successful
content:
application/json:
examples:
successful:
value:
id: 2
created_at: '2026-06-09T14:22:05Z'
updated_at: '2026-06-09T14:22:05Z'
first_name: First Name
last_name: Last Name
email: test@email.com
personnel: Test
phone_number: '+17722271221'
show_on_ro: true
schema:
type: object
properties:
id:
type: integer
description: Unique identifier of this record.
first_name:
type: string
description: First name,
last_name:
type: string
nullable: true
description: Last name.
email:
type: string
format: email
nullable: true
description: Email.
personnel:
type: string
nullable: true
description: Personnel.
phone_number:
type: string
nullable: true
description: Phone number.
show_on_ro:
type: boolean
nullable: true
description: Defines whether contact is shows on Repair Order.
created_at:
type: string
format: date-time
description: Date and time when record was created.
updated_at:
type: string
format: date-time
description: Date and time when record was last updated.
requestBody:
content:
application/json:
schema:
type: object
required:
- first_name
properties:
first_name:
type: string
description: First name
last_name:
type: string
nullable: true
description: Last name
email:
type: string
nullable: true
description: Email.
personnel:
type: string
nullable: true
description: Personnel.
phone_number:
type: string
nullable: true
description: Phone number.
show_on_ro:
type: boolean
nullable: true
description: Defines whether contact is shows on Repair Order.
example:
first_name: First Name
last_name: Last Name
email: test@email.com
personnel: Test
phone_number: '+17722271221'
show_on_ro: true
/api/v1/tenants/{tenant_id}/customers/{customer_id}/contacts/{id}:
parameters:
- name: tenant_id
in: path
required: true
example: '1'
schema:
type: string
- name: customer_id
in: path
description: Customer id must reference to customer with 'corporate' type.
required: true
example: '1'
schema:
type: string
- name: id
in: path
required: true
example: '2'
schema:
type: string
put:
summary: Update an existing contact for customer
tags:
- Contacts
parameters: []
responses:
'200':
description: successful
content:
application/json:
examples:
successful:
value:
id: 2
created_at: '2026-06-09T14:22:08Z'
updated_at: '2026-06-09T14:22:08Z'
first_name: First Name
last_name: Last Name
email: test@email.com
personnel: Test
phone_number: '+17722271221'
show_on_ro: true
schema:
type: object
properties:
id:
type: integer
description: Unique identifier of this record.
first_name:
type: string
description: First name,
last_name:
type: string
nullable: true
description: Last name.
email:
type: string
format: email
nullable: true
description: Email.
personnel:
type: string
nullable: true
description: Personnel.
phone_number:
type: string
nullable: true
description: Phone number.
show_on_ro:
type: boolean
nullable: true
description: Defines whether contact is shows on Repair Order.
created_at:
type: string
format: date-time
description: Date and time when record was created.
updated_at:
type: string
format: date-time
description: Date and time when record was last updated.
requestBody:
content:
application/json:
schema:
type: object
properties:
first_name:
type: string
description: First name
last_name:
type: string
nullable: true
description: Last name
email:
type: string
nullable: true
description: Email.
personnel:
type: string
nullable: true
description: Personnel.
phone_number:
type: string
nullable: true
description: Phone number.
show_on_ro:
type: boolean
nullable: true
description: Defines whether contact is shows on Repair Order.
example:
first_name: First Name
last_name: Last Name
email: test@email.com
personnel: Test
phone_number: '+17722271221'
show_on_ro: true
components:
securitySchemes:
api_partner_id:
type: apiKey
name: X-Api-Partner-Id
in: header
api_secret:
type: apiKey
name: X-Api-Secret
in: header