OpenAPI OplaCRM (1.0.0)

Download OpenAPI specification:

License: 1.0.0

Powered by OplaCRM.

Url OPENAPI: https://api-admin.oplacrm.com/api

OpenApi

OpenApi

Webhook

Webhook

contacts

Get contact by external_id

Authorizations:
bearer
path Parameters
external_id
required
string

Responses

Response samples

Content type
application/json
{
  • "first_name": "First Name Contact",
  • "last_name": "Last Name Contact",
  • "gender": "MALE",
  • "email": "Email",
  • "birthday": "2010-10-27T17:00:00.000Z",
  • "department": "Department",
  • "description": "Description",
  • "account_external_id": "ACCOUNT-007",
  • "external_id": "CONTACT-007",
  • "address": "Sarina, An Loi Dong",
  • "phone_work": {
    },
  • "phone_other": {
    },
  • "website": "https://oplacrm.com",
  • "owner_id": "MNV_001",
  • "id": "03d245c1-2250-4742-886e-29192ba9a75c",
  • "name": "string",
  • "company_id": "string",
  • "created_by": "string",
  • "updated_by": "string",
  • "owner": {
    }
}

Update contact by external_id

Authorizations:
bearer
path Parameters
external_id
required
string
Request Body schema: application/json
required
first_name
required
string
last_name
required
string
gender
string (Gender)
Enum: "MALE" "FEMALE" "OTHER"
email
required
string
birthday
required
string
department
required
string
description
required
string
external_id
required
string

Employee External Id

address
required
string
phone_work
required
object
phone_other
required
object
website
required
string
owner_id
required
string

Employee External Id

Responses

Request samples

Content type
application/json
{
  • "first_name": "First Name Contact",
  • "last_name": "Last Name Contact",
  • "gender": "MALE",
  • "email": "Email",
  • "birthday": "2010-10-27T17:00:00.000Z",
  • "department": "Department",
  • "description": "Description",
  • "external_id": "MNV_001",
  • "address": "Sarina, An Loi Dong",
  • "phone_work": {
    },
  • "phone_other": {
    },
  • "website": "https://oplacrm.com",
  • "owner_id": "MNV_001"
}

Response samples

Content type
application/json
{
  • "first_name": "First Name Contact",
  • "last_name": "Last Name Contact",
  • "gender": "MALE",
  • "email": "Email",
  • "birthday": "2010-10-27T17:00:00.000Z",
  • "department": "Department",
  • "description": "Description",
  • "account_external_id": "ACCOUNT-007",
  • "external_id": "CONTACT-007",
  • "address": "Sarina, An Loi Dong",
  • "phone_work": {
    },
  • "phone_other": {
    },
  • "website": "https://oplacrm.com",
  • "owner_id": "MNV_001",
  • "id": "03d245c1-2250-4742-886e-29192ba9a75c",
  • "name": "string",
  • "company_id": "string",
  • "created_by": "string",
  • "updated_by": "string",
  • "owner": {
    }
}

Update contact by external_id

Authorizations:
bearer
path Parameters
external_id
required
string

Responses

Response samples

Content type
application/json
{
  • "first_name": "First Name Contact",
  • "last_name": "Last Name Contact",
  • "gender": "MALE",
  • "email": "Email",
  • "birthday": "2010-10-27T17:00:00.000Z",
  • "department": "Department",
  • "description": "Description",
  • "account_external_id": "ACCOUNT-007",
  • "external_id": "CONTACT-007",
  • "address": "Sarina, An Loi Dong",
  • "phone_work": {
    },
  • "phone_other": {
    },
  • "website": "https://oplacrm.com",
  • "owner_id": "MNV_001",
  • "id": "03d245c1-2250-4742-886e-29192ba9a75c",
  • "name": "string",
  • "company_id": "string",
  • "created_by": "string",
  • "updated_by": "string",
  • "owner": {
    }
}

Get all contacts of company

Authorizations:
bearer
query Parameters
skip
required
number
Default: 0
take
required
number
Default: 20
account_external_id
required
string
Default: ""
external_id
required
string
Default: ""

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a contact

Create a contact with Opla CRM, external_id will be key

Authorizations:
bearer
Request Body schema: application/json
required
first_name
required
string
last_name
required
string
gender
string (Gender)
Enum: "MALE" "FEMALE" "OTHER"
email
required
string
birthday
required
string
department
required
string
description
required
string
account_external_id
required
string

External ID of Account

external_id
required
string
address
required
string
phone_work
required
object
phone_other
required
object
website
required
string
owner_id
required
string

Employee External Id

Responses

Request samples

Content type
application/json
{
  • "first_name": "First Name Contact",
  • "last_name": "Last Name Contact",
  • "gender": "MALE",
  • "email": "Email",
  • "birthday": "2010-10-27T17:00:00.000Z",
  • "department": "Department",
  • "description": "Description",
  • "account_external_id": "ACCOUNT-007",
  • "external_id": "CONTACT-007",
  • "address": "Sarina, An Loi Dong",
  • "phone_work": {
    },
  • "phone_other": {
    },
  • "website": "https://oplacrm.com",
  • "owner_id": "MNV_001"
}

Response samples

Content type
application/json
{
  • "first_name": "First Name Contact",
  • "last_name": "Last Name Contact",
  • "gender": "MALE",
  • "email": "Email",
  • "birthday": "2010-10-27T17:00:00.000Z",
  • "department": "Department",
  • "description": "Description",
  • "account_external_id": "ACCOUNT-007",
  • "external_id": "CONTACT-007",
  • "address": "Sarina, An Loi Dong",
  • "phone_work": {
    },
  • "phone_other": {
    },
  • "website": "https://oplacrm.com",
  • "owner_id": "MNV_001",
  • "id": "03d245c1-2250-4742-886e-29192ba9a75c",
  • "name": "string",
  • "company_id": "string",
  • "created_by": "string",
  • "updated_by": "string",
  • "owner": {
    }
}

accounts

Get account by external_id

Authorizations:
bearer
path Parameters
external_id
required
string

Responses

Response samples

Content type
application/json
{
  • "name": "Name Account",
  • "long_name": "Long Name Account",
  • "description": "Description",
  • "tax_identification_number": "Tax of Account",
  • "email": "Email",
  • "external_id": "ACCOUNT-007",
  • "address": "Sarina, An Loi Dong",
  • "phone": {
    },
  • "website": "https://oplacrm.com",
  • "is_public": false,
  • "note": "Note",
  • "account_type": "Account Type",
  • "source_id": "9a8b7c6d-5e4f-3g2h-1i0j-kl9m8n7o6p5q",
  • "industry_id": "1a2b3c4d-5e6f-7g8h-9i0j-k1l2m3n4o5p6",
  • "owner_id": "MNV_001",
  • "created_by": "MNV_001",
  • "updated_by": "MNV_001",
  • "id": "03d245c1-2250-4742-886e-29192ba9a75c",
  • "owner": {
    }
}

Update account by external_id

Authorizations:
bearer
path Parameters
external_id
required
string
Request Body schema: application/json
required
name
required
string
long_name
required
string
description
required
string
tax_identification_number
required
string
email
required
string
external_id
required
string

Employee External Id

address
required
string
phone
required
object
website
required
string
is_public
required
boolean
Default: false
note
required
string
account_type
required
object
source_id
required
string

Source ID

industry_id
required
string

Industry ID

owner_id
required
string

Employee External Id

created_by
required
string

Employee External Id

updated_by
required
string

Employee External Id

custom_fields
required
Array of strings

Responses

Request samples

Content type
application/json
{
  • "name": "Name Account",
  • "long_name": "Long Name Account",
  • "description": "Description",
  • "tax_identification_number": "Tax of Account",
  • "email": "Email",
  • "external_id": "MNV_001",
  • "address": "Sarina, An Loi Dong",
  • "phone": {
    },
  • "website": "https://oplacrm.com",
  • "is_public": false,
  • "note": "Note",
  • "account_type": "Account Type",
  • "source_id": "9a8b7c6d-5e4f-3g2h-1i0j-kl9m8n7o6p5q",
  • "industry_id": "1a2b3c4d-5e6f-7g8h-9i0j-k1l2m3n4o5p6",
  • "owner_id": "MNV_001",
  • "created_by": "MNV_001",
  • "updated_by": "MNV_001",
  • "custom_fields": "Custom Field Value"
}

Response samples

Content type
application/json
{
  • "name": "Name Account",
  • "long_name": "Long Name Account",
  • "description": "Description",
  • "tax_identification_number": "Tax of Account",
  • "email": "Email",
  • "external_id": "ACCOUNT-007",
  • "address": "Sarina, An Loi Dong",
  • "phone": {
    },
  • "website": "https://oplacrm.com",
  • "is_public": false,
  • "note": "Note",
  • "account_type": "Account Type",
  • "source_id": "9a8b7c6d-5e4f-3g2h-1i0j-kl9m8n7o6p5q",
  • "industry_id": "1a2b3c4d-5e6f-7g8h-9i0j-k1l2m3n4o5p6",
  • "owner_id": "MNV_001",
  • "created_by": "MNV_001",
  • "updated_by": "MNV_001",
  • "id": "03d245c1-2250-4742-886e-29192ba9a75c",
  • "owner": {
    }
}

Get all accounts of company

Authorizations:
bearer
query Parameters
skip
required
number
Default: 0
take
required
number
Default: 20
external_id
required
string
Default: ""
tax_identification_number
required
string
Default: ""

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a account

Create a account with Opla CRM, external_id will be key

Authorizations:
bearer
Request Body schema: application/json
required
name
required
string
long_name
required
string
description
required
string
tax_identification_number
required
string
email
required
string
external_id
required
string
address
required
string
phone
required
object
website
required
string
is_public
required
boolean
Default: false
note
required
string
account_type
required
object
source_id
required
string

Source ID

industry_id
required
string

Industry ID

owner_id
required
string

Employee External Id

created_by
required
string

Employee External Id

updated_by
required
string

Employee External Id

Responses

Request samples

Content type
application/json
{
  • "name": "Name Account",
  • "long_name": "Long Name Account",
  • "description": "Description",
  • "tax_identification_number": "Tax of Account",
  • "email": "Email",
  • "external_id": "ACCOUNT-007",
  • "address": "Sarina, An Loi Dong",
  • "phone": {
    },
  • "website": "https://oplacrm.com",
  • "is_public": false,
  • "note": "Note",
  • "account_type": "Account Type",
  • "source_id": "9a8b7c6d-5e4f-3g2h-1i0j-kl9m8n7o6p5q",
  • "industry_id": "1a2b3c4d-5e6f-7g8h-9i0j-k1l2m3n4o5p6",
  • "owner_id": "MNV_001",
  • "created_by": "MNV_001",
  • "updated_by": "MNV_001"
}

Response samples

Content type
application/json
{
  • "name": "Name Account",
  • "long_name": "Long Name Account",
  • "description": "Description",
  • "tax_identification_number": "Tax of Account",
  • "email": "Email",
  • "external_id": "ACCOUNT-007",
  • "address": "Sarina, An Loi Dong",
  • "phone": {
    },
  • "website": "https://oplacrm.com",
  • "is_public": false,
  • "note": "Note",
  • "account_type": "Account Type",
  • "source_id": "9a8b7c6d-5e4f-3g2h-1i0j-kl9m8n7o6p5q",
  • "industry_id": "1a2b3c4d-5e6f-7g8h-9i0j-k1l2m3n4o5p6",
  • "owner_id": "MNV_001",
  • "created_by": "MNV_001",
  • "updated_by": "MNV_001",
  • "id": "03d245c1-2250-4742-886e-29192ba9a75c",
  • "owner": {
    }
}

Get all sources

Authorizations:
bearer

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all industries

Authorizations:
bearer

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Update account by uuid

Authorizations:
bearer
path Parameters
uuid
required
string
Request Body schema: application/json
required
name
required
string
long_name
required
string
description
required
string
tax_identification_number
required
string
email
required
string
external_id
required
string

Employee External Id

address
required
string
phone
required
object
website
required
string
is_public
required
boolean
Default: false
note
required
string
account_type
required
object
source_id
required
string

Source ID

industry_id
required
string

Industry ID

owner_id
required
string

Employee External Id

created_by
required
string

Employee External Id

updated_by
required
string

Employee External Id

custom_fields
required
Array of strings

Responses

Request samples

Content type
application/json
{
  • "name": "Name Account",
  • "long_name": "Long Name Account",
  • "description": "Description",
  • "tax_identification_number": "Tax of Account",
  • "email": "Email",
  • "external_id": "MNV_001",
  • "address": "Sarina, An Loi Dong",
  • "phone": {
    },
  • "website": "https://oplacrm.com",
  • "is_public": false,
  • "note": "Note",
  • "account_type": "Account Type",
  • "source_id": "9a8b7c6d-5e4f-3g2h-1i0j-kl9m8n7o6p5q",
  • "industry_id": "1a2b3c4d-5e6f-7g8h-9i0j-k1l2m3n4o5p6",
  • "owner_id": "MNV_001",
  • "created_by": "MNV_001",
  • "updated_by": "MNV_001",
  • "custom_fields": "Custom Field Value"
}

Response samples

Content type
application/json
{
  • "name": "Name Account",
  • "long_name": "Long Name Account",
  • "description": "Description",
  • "tax_identification_number": "Tax of Account",
  • "email": "Email",
  • "external_id": "ACCOUNT-007",
  • "address": "Sarina, An Loi Dong",
  • "phone": {
    },
  • "website": "https://oplacrm.com",
  • "is_public": false,
  • "note": "Note",
  • "account_type": "Account Type",
  • "source_id": "9a8b7c6d-5e4f-3g2h-1i0j-kl9m8n7o6p5q",
  • "industry_id": "1a2b3c4d-5e6f-7g8h-9i0j-k1l2m3n4o5p6",
  • "owner_id": "MNV_001",
  • "created_by": "MNV_001",
  • "updated_by": "MNV_001",
  • "id": "03d245c1-2250-4742-886e-29192ba9a75c",
  • "owner": {
    }
}

Assign owner to Account

Authorizations:
bearer
Request Body schema: application/json
required
account_id
required
string

Account External Id

employee_id
required
string

Employee External Id

Responses

Request samples

Content type
application/json
{
  • "account_id": "ACT-001",
  • "employee_id": "EMP-001"
}

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "message": "Request was successful"
}

Assign contributor to Account.

Request Body schema: application/json
required
account_id
required
string

Account External Id

employee_id
required
string

Employee External Id

Responses

Request samples

Content type
application/json
{
  • "account_id": "ACT-001",
  • "employee_id": "EMP-001"
}

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "message": "Request was successful"
}

Unassign contributor to Account

Request Body schema: application/json
required
account_id
required
string

Account External Id

employee_id
required
string

Employee External Id

Responses

Request samples

Content type
application/json
{
  • "account_id": "ACT-001",
  • "employee_id": "EMP-001"
}

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "message": "Request was successful"
}

opportunities

Get opportunity by short_id

path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{
  • "id": "660f4375-1c7a-4d2c-8cf6-f04aa355122f",
  • "name": "Log stage",
  • "description": "string",
  • "amount": 0,
  • "amount_usd_dollar": 0,
  • "date_closed": "2025-07-24",
  • "date_open": "2025-06-24T00:00:00+00:00",
  • "stage_compact": "CLOSE_WON",
  • "owner_id": "f11c8149-4cd9-44b1-bea9-1ceeff1c91bc",
  • "short_id": "2025.00186",
  • "invoice": 0,
  • "tax_inclusive_amount": "0",
  • "date_closed_actual": "2025-06-24",
  • "stage_logs": [
    ]
}

Update opportunity by short_id

Authorizations:
bearer
path Parameters
id
required
string
Request Body schema: application/json
required
name
required
string

Opportunity Name

external_id
required
string

External Id

locked
required
boolean

Locked

opportunities_joint_id
string

Opportunity Joint - UUID of OPLA

stage_close
string (StageCompact)
Enum: "CLOSE_WON" "CLOSE_LOST"
sale_process_stage
required
string
close_reason
required
string
date_closed
required
string
required
Array of objects (CreateOpportunityProductDto)
required
Array of objects (CreateOpportunityProductDto)
required
Array of objects (CreateOpportunityInvoiceDto)
required
Array of objects (CustomFieldValueDto)

Responses

Request samples

Content type
application/json
{
  • "name": "Hasura002",
  • "external_id": "API 01",
  • "locked": true,
  • "opportunities_joint_id": "b8e45bc9-cfbd-4196-a3ae-199a64215f84",
  • "stage_close": "CLOSE_WON",
  • "sale_process_stage": "string",
  • "close_reason": "string",
  • "date_closed": "2024-08-25",
  • "products": [
    ],
  • "opportunities_products": [
    ],
  • "invoices": [
    ],
  • "custom_fields": [
    ]
}

Response samples

Content type
application/json
{
  • "id": "660f4375-1c7a-4d2c-8cf6-f04aa355122f",
  • "name": "Log stage",
  • "description": "string",
  • "amount": 0,
  • "amount_usd_dollar": 0,
  • "date_closed": "2025-07-24",
  • "date_open": "2025-06-24T00:00:00+00:00",
  • "stage_compact": "CLOSE_WON",
  • "owner_id": "f11c8149-4cd9-44b1-bea9-1ceeff1c91bc",
  • "short_id": "2025.00186",
  • "invoice": 0,
  • "tax_inclusive_amount": "0",
  • "date_closed_actual": "2025-06-24",
  • "stage_logs": [
    ]
}

Get opportunity by external_id

path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{
  • "id": "660f4375-1c7a-4d2c-8cf6-f04aa355122f",
  • "name": "Log stage",
  • "description": "string",
  • "amount": 0,
  • "amount_usd_dollar": 0,
  • "date_closed": "2025-07-24",
  • "date_open": "2025-06-24T00:00:00+00:00",
  • "stage_compact": "CLOSE_WON",
  • "owner_id": "f11c8149-4cd9-44b1-bea9-1ceeff1c91bc",
  • "short_id": "2025.00186",
  • "invoice": 0,
  • "tax_inclusive_amount": "0",
  • "date_closed_actual": "2025-06-24",
  • "stage_logs": [
    ]
}

Update opportunity by id

Authorizations:
bearer
path Parameters
id
required
string
Request Body schema: application/json
required
name
required
string

Opportunity Name

external_id
required
string

External Id

locked
required
boolean

Locked

opportunities_joint_id
string

Opportunity Joint - UUID of OPLA

stage_close
string (StageCompact)
Enum: "CLOSE_WON" "CLOSE_LOST"
sale_process_stage
required
string
close_reason
required
string
date_closed
required
string
required
Array of objects (CreateOpportunityProductDto)
required
Array of objects (CreateOpportunityProductDto)
required
Array of objects (CreateOpportunityInvoiceDto)
required
Array of objects (CustomFieldValueDto)

Responses

Request samples

Content type
application/json
{
  • "name": "Hasura002",
  • "external_id": "API 01",
  • "locked": true,
  • "opportunities_joint_id": "b8e45bc9-cfbd-4196-a3ae-199a64215f84",
  • "stage_close": "CLOSE_WON",
  • "sale_process_stage": "string",
  • "close_reason": "string",
  • "date_closed": "2024-08-25",
  • "products": [
    ],
  • "opportunities_products": [
    ],
  • "invoices": [
    ],
  • "custom_fields": [
    ]
}

Response samples

Content type
application/json
{
  • "id": "660f4375-1c7a-4d2c-8cf6-f04aa355122f",
  • "name": "Log stage",
  • "description": "string",
  • "amount": 0,
  • "amount_usd_dollar": 0,
  • "date_closed": "2025-07-24",
  • "date_open": "2025-06-24T00:00:00+00:00",
  • "stage_compact": "CLOSE_WON",
  • "owner_id": "f11c8149-4cd9-44b1-bea9-1ceeff1c91bc",
  • "short_id": "2025.00186",
  • "invoice": 0,
  • "tax_inclusive_amount": "0",
  • "date_closed_actual": "2025-06-24",
  • "stage_logs": [
    ]
}

Get many opportunities

query Parameters
skip
required
number
Default: 0
take
required
number <= 200
Default: 20

Maximum 200 records per request

sales_process
required
string
Default: null
sales_process_stages
required
string
Default: null

Responses

Response samples

Content type
application/json
{
  • "id": "660f4375-1c7a-4d2c-8cf6-f04aa355122f",
  • "name": "Log stage",
  • "description": "string",
  • "amount": 0,
  • "amount_usd_dollar": 0,
  • "date_closed": "2025-07-24",
  • "date_open": "2025-06-24T00:00:00+00:00",
  • "stage_compact": "CLOSE_WON",
  • "owner_id": "f11c8149-4cd9-44b1-bea9-1ceeff1c91bc",
  • "short_id": "2025.00186",
  • "invoice": 0,
  • "tax_inclusive_amount": "0",
  • "date_closed_actual": "2025-06-24",
  • "stage_logs": [
    ]
}

Create new opportunity

Request Body schema: application/json
required
name
required
string
account_external_id
required
string
account_id
required
string
contacts_external_ids
required
Array of strings
contacts_ids
required
Array of strings
date_open
required
string
date_closed
required
string
required
Array of objects (OpportunitiesProductDto)
forecast
required
string
type
required
string
source
required
string
opportunities_joint
required
string
sale_process
required
string
sale_process_stage
required
string
required
Array of objects (ContributorDto)

List of contributors

external_id
required
string
owner_external_id
required
string
owner_email
required
string
application
required
string
required
Array of objects (CustomFieldValueDto)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "account_external_id": "string",
  • "account_id": "string",
  • "contacts_external_ids": [
    ],
  • "contacts_ids": [
    ],
  • "date_open": "string",
  • "date_closed": "string",
  • "opportunities_products": [
    ],
  • "forecast": "string",
  • "type": "string",
  • "source": "string",
  • "opportunities_joint": "string",
  • "sale_process": "string",
  • "sale_process_stage": "string",
  • "contributors": [
    ],
  • "external_id": "string",
  • "owner_external_id": "string",
  • "owner_email": "string",
  • "application": "application",
  • "custom_fields": [
    ]
}

Add contributor to opportunity

Authorizations:
bearer
path Parameters
id
required
string
Request Body schema: application/json
required
email
required
string

Email of the contributor to add

permission
required
string
Enum: "READ_ONLY" "READ_WRITE"

Permission level

Responses

Request samples

Content type
application/json
{
  • "email": "contributor@company.com",
  • "permission": "READ_ONLY"
}

Response samples

Content type
application/json
{
  • "id": "660f4375-1c7a-4d2c-8cf6-f04aa355122f",
  • "name": "Log stage",
  • "description": "string",
  • "amount": 0,
  • "amount_usd_dollar": 0,
  • "date_closed": "2025-07-24",
  • "date_open": "2025-06-24T00:00:00+00:00",
  • "stage_compact": "CLOSE_WON",
  • "owner_id": "f11c8149-4cd9-44b1-bea9-1ceeff1c91bc",
  • "short_id": "2025.00186",
  • "invoice": 0,
  • "tax_inclusive_amount": "0",
  • "date_closed_actual": "2025-06-24",
  • "stage_logs": [
    ]
}

opportunities-v1

Opportunities V1 API

Get opportunities - V1 Optimized API

Optimized opportunities API with exact same structure as original but much faster performance. This is the new standard API endpoint. Maximum 200 records per request.

query Parameters
skip
required
number
Default: 0
take
required
number <= 200
Default: 20

Maximum 200 records per request

sales_process
required
string
Default: null
sales_process_stages
required
string
Default: null

Responses

leads

Get leads status of company

Authorizations:
bearer

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all leads of company

Authorizations:
bearer
query Parameters
skip
required
number
Default: 0
Examples: skip=0 skip=20 skip=40 skip=60

Number of records to skip

take
required
number
Default: 20
Examples: take=10 take=20 take=50 take=100

Number of records to take

external_id
required
string
Examples: external_id=LEAD-001 external_id=LEAD-002 external_id=CRM-123

External ID of the lead

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create lead

Create a lead with Opla CRM, external_id will be key

Authorizations:
bearer
Request Body schema: application/json
required
name
required
string

Name of the lead

job_title
string

Job title of the lead

gender
string
Enum: "MALE" "FEMALE" "OTHER"

Gender of the lead

address
string

Physical address of the lead

note
string

Note lead

account_name
required
string

Name of the account/company

contact_name
string

Name of the primary contact

phone
object

Phone information

email
string

Email address of the lead

owner_id
string

ID of the lead owner

external_id
string non-empty

External identifier for the lead

external_from
string

Source system of the external ID

lead_segmentation
string

Lead segmentation name

lead_status
string

Lead status name

industry
string

Industry name

source
string

Lead source name

Array of objects (CustomFieldDto)

Array of custom fields

Responses

Request samples

Content type
application/json
{
  • "name": "John Smith",
  • "job_title": "Software Engineer",
  • "gender": "MALE",
  • "address": "123 Tech Street, Silicon Valley",
  • "note": "Note lead",
  • "account_name": "Acme Corporation",
  • "contact_name": "Jane Doe",
  • "phone": {
    },
  • "email": "john.smith@acme.com",
  • "owner_id": "12345",
  • "external_id": "LEAD-001",
  • "external_from": "CRM",
  • "lead_segmentation": "Enterprise",
  • "lead_status": "New",
  • "industry": "Technology",
  • "source": "Website",
  • "custom_fields": [
    ]
}

Response samples

Content type
application/json
{
  • "name": "John Smith",
  • "job_title": "Software Engineer",
  • "gender": "MALE",
  • "address": "123 Tech Street, Silicon Valley",
  • "note": "Note lead",
  • "account_name": "Acme Corporation",
  • "contact_name": "Jane Doe",
  • "phone": {
    },
  • "email": "john.smith@acme.com",
  • "owner_id": "12345",
  • "external_id": "LEAD-001",
  • "external_from": "CRM",
  • "lead_segmentation": "Enterprise",
  • "lead_status": "New",
  • "industry": "Technology",
  • "source": "Website",
  • "custom_fields": [
    ],
  • "id": "03d245c1-2250-4742-886e-29192ba9a75c",
  • "owner": {
    }
}

Update leads by external_id

Authorizations:
bearer
path Parameters
id
required
string
Request Body schema: application/json
required
name
required
string

Name of the lead

job_title
string

Job title of the lead

gender
string
Enum: "MALE" "FEMALE" "OTHER"

Gender of the lead

address
string

Physical address of the lead

note
string

Note lead

account_name
required
string

Name of the account/company

contact_name
string

Name of the primary contact

phone
object

Phone information

email
string

Email address of the lead

owner_id
string

ID of the lead owner

external_from
string

Source system of the external ID

lead_segmentation
string

Lead segmentation name

lead_status
string

Lead status name

industry
string

Industry name

source
string

Lead source name

required
Array of objects (CustomFieldValueDto)

Responses

Request samples

Content type
application/json
{
  • "name": "John Smith",
  • "job_title": "Software Engineer",
  • "gender": "MALE",
  • "address": "123 Tech Street, Silicon Valley",
  • "note": "Note lead",
  • "account_name": "Acme Corporation",
  • "contact_name": "Jane Doe",
  • "phone": {
    },
  • "email": "john.smith@acme.com",
  • "owner_id": "12345",
  • "external_from": "CRM",
  • "lead_segmentation": "Enterprise",
  • "lead_status": "New",
  • "industry": "Technology",
  • "source": "Website",
  • "custom_fields": [
    ]
}

Response samples

Content type
application/json
{
  • "name": "John Smith",
  • "job_title": "Software Engineer",
  • "gender": "MALE",
  • "address": "123 Tech Street, Silicon Valley",
  • "note": "Note lead",
  • "account_name": "Acme Corporation",
  • "contact_name": "Jane Doe",
  • "phone": {
    },
  • "email": "john.smith@acme.com",
  • "owner_id": "12345",
  • "external_id": "LEAD-001",
  • "external_from": "CRM",
  • "lead_segmentation": "Enterprise",
  • "lead_status": "New",
  • "industry": "Technology",
  • "source": "Website",
  • "custom_fields": [
    ],
  • "id": "03d245c1-2250-4742-886e-29192ba9a75c",
  • "owner": {
    }
}

sales-process

Get all sales processes

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get sales process by ID

path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{
  • "id": "07f25a7c-aeae-4da3-98f0-65a4c957aa30",
  • "name": "Sales process Default",
  • "is_active": true,
  • "description": "Default",
  • "stages": [
    ]
}

employee

Create a employee

Authorizations:
bearer
Request Body schema: application/json
required
first_name
required
string
last_name
required
string
email
required
string
dimension_id
required
string
Default: null
site_id
required
string
Default: null
external_id
required
string
Default: null

Responses

Request samples

Content type
application/json
{
  • "first_name": "Jone",
  • "last_name": "Doe",
  • "email": "jone.doe@oplacrm.com",
  • "dimension_id": "DMS-001",
  • "site_id": "S-001",
  • "external_id": "EMP-001"
}

Response samples

Content type
application/json
{
  • "statusCode": 401,
  • "message": "Unauthorized"
}

Get all employee of company

Authorizations:
bearer
query Parameters
skip
required
number
Default: 0
take
required
number
Default: 20
search
required
string
Default: ""

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Update a employee

Authorizations:
bearer
path Parameters
id
required
string
Request Body schema: application/json
required
first_name
required
string
last_name
required
string
dimension_id
required
string
Default: null
site_id
required
string
Default: null

Responses

Request samples

Content type
application/json
{
  • "first_name": "Jone",
  • "last_name": "Doe",
  • "dimension_id": "DMS-001",
  • "site_id": "S-001"
}

Response samples

Content type
application/json
{
  • "statusCode": 401,
  • "message": "Unauthorized"
}

Get one employee of company by external_id

Authorizations:
bearer
path Parameters
external_id
required
string

Responses

Response samples

Content type
application/json
{
  • "first_name": "Jone",
  • "last_name": "Doe",
  • "email": "jone.doe@oplacrm.com",
  • "external_id": "EMP-001"
}

Active employee by external_id

Authorizations:
bearer
path Parameters
external_id
required
string

Responses

Response samples

Content type
application/json
{ }

Inactive employee by external_id

Authorizations:
bearer
path Parameters
external_id
required
string

Responses

Response samples

Content type
application/json
{ }

products

Create product

Create a lead with Opla CRM, external_id will be key

Authorizations:
bearer
Request Body schema: application/json
required
name
required
string
Default: "name"
description
required
string
Default: "description"
price
required
number
Default: 0
supplier_id
required
string
unit_of_measure_id
required
string
category_id
required
string
sub_category_id
required
string
external_id
required
string
Default: 1753866687345

Responses

Request samples

Content type
application/json
{
  • "name": "name",
  • "description": "description",
  • "price": 0,
  • "supplier_id": "string",
  • "unit_of_measure_id": "string",
  • "category_id": "string",
  • "sub_category_id": "string",
  • "external_id": 1753866687345
}

Response samples

Content type
application/json
{
  • "name": "name",
  • "description": "description",
  • "price": 0,
  • "supplier_id": "string",
  • "unit_of_measure_id": "string",
  • "category_id": "string",
  • "sub_category_id": "string",
  • "external_id": 1753866687345,
  • "id": "03d245c1-2250-4742-886e-29192ba9a75c",
  • "owner": {
    }
}

Get all products

Retrieve all products for the company

Authorizations:
bearer

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Update product by external_id

path Parameters
external_id
required
string
Request Body schema: application/json
required
name
required
string
Default: "name"
description
required
string
Default: "description"
price
required
number
Default: 0
supplier_id
required
string
unit_of_measure_id
required
string
category_id
required
string
sub_category_id
required
string

Responses

Request samples

Content type
application/json
{
  • "name": "name",
  • "description": "description",
  • "price": 0,
  • "supplier_id": "string",
  • "unit_of_measure_id": "string",
  • "category_id": "string",
  • "sub_category_id": "string"
}

Update product by external_id

path Parameters
external_id
required
string

Responses

Upsert product

Create or update a product based on external_id

Authorizations:
bearer
Request Body schema: application/json
required
name
required
string
Default: "name"
description
required
string
Default: "description"
price
required
number
Default: 0
supplier_id
required
string
unit_of_measure_id
required
string
category_id
required
string
sub_category_id
required
string
external_id
required
string
Default: 1753866687347
id
required
string
deleted
required
number
Default: 0
Enum: 0 1

Delete status: 0 - Active, 1 - Deleted

Responses

Request samples

Content type
application/json
{
  • "name": "name",
  • "description": "description",
  • "price": 0,
  • "supplier_id": "string",
  • "unit_of_measure_id": "string",
  • "category_id": "string",
  • "sub_category_id": "string",
  • "external_id": 1753866687347,
  • "id": "string",
  • "deleted": 0
}

Response samples

Content type
application/json
{
  • "name": "name",
  • "description": "description",
  • "price": 0,
  • "supplier_id": "string",
  • "unit_of_measure_id": "string",
  • "category_id": "string",
  • "sub_category_id": "string",
  • "external_id": 1753866687345,
  • "id": "03d245c1-2250-4742-886e-29192ba9a75c",
  • "owner": {
    }
}

sites

Create site

Request Body schema: application/json
required
value
required
string
Default: "value"
description
required
string
external_id
required
string

Responses

Request samples

Content type
application/json
{
  • "value": "value",
  • "description": "string",
  • "external_id": "string"
}

Update site by external_id

path Parameters
id
required
string
Request Body schema: application/json
required
value
required
string
Default: "value"
description
required
string

Responses

Request samples

Content type
application/json
{
  • "value": "value",
  • "description": "string"
}

suppliers

Create supplier

Create supplier

Request Body schema: application/json
required
name
required
string
Default: "name"
buyer_group_id
required
string
buyer_group_name
required
string
external_id
required
string
main_contact_id
required
string

Responses

Request samples

Content type
application/json
{
  • "name": "name",
  • "buyer_group_id": "string",
  • "buyer_group_name": "string",
  • "external_id": "string",
  • "main_contact_id": "string"
}

Update supplier

Update supplier

path Parameters
id
required
string
Request Body schema: application/json
required
name
required
string
Default: "name"
buyer_group_id
required
string
buyer_group_name
required
string
main_contact_id
required
string

Responses

Request samples

Content type
application/json
{
  • "name": "name",
  • "buyer_group_id": "string",
  • "buyer_group_name": "string",
  • "main_contact_id": "string"
}

unit-of-measures

Create unit of measures

Create unit of measures

Authorizations:
bearer
Request Body schema: application/json
required
name
required
string
Default: "value"
description
required
string
external_id
required
string

Responses

Request samples

Content type
application/json
{
  • "name": "value",
  • "description": "string",
  • "external_id": "string"
}

Response samples

Content type
application/json
{
  • "name": "value",
  • "description": "string",
  • "external_id": "string",
  • "id": "03d245c1-2250-4742-886e-29192ba9a75c",
  • "owner": {
    }
}

Update unit of measures by external_id

Update unit of measures by external_id

path Parameters
id
required
string
Request Body schema: application/json
required
name
required
string
Default: "value"
description
required
string

Responses

Request samples

Content type
application/json
{
  • "name": "value",
  • "description": "string"
}

buyer-group

Create buyer-group

Create a buyer-group with Opla CRM, external_id will be key

Authorizations:
bearer
Request Body schema: application/json
required
name
required
string
Default: "value"
description
required
string
external_id
required
string

Responses

Request samples

Content type
application/json
{
  • "name": "value",
  • "description": "string",
  • "external_id": "string"
}

Response samples

Content type
application/json
{
  • "name": "value",
  • "description": "string",
  • "external_id": "string",
  • "id": "03d245c1-2250-4742-886e-29192ba9a75c",
  • "owner": {
    }
}

Update buyer-group by external_id

Authorizations:
bearer
path Parameters
id
required
string
Request Body schema: application/json
required
name
required
string
Default: "value"
description
required
string

Responses

Request samples

Content type
application/json
{
  • "name": "value",
  • "description": "string"
}

Response samples

Content type
application/json
{
  • "name": "value",
  • "description": "string",
  • "external_id": "string",
  • "id": "03d245c1-2250-4742-886e-29192ba9a75c",
  • "owner": {
    }
}