API v2

Scoro API v2

Overview

The Scoro API is an interface for accessing your Scoro account data using HTTP and JSON. The API makes it easy to create web and desktop applications that integrate with your account.

Some potential application ideas:

The Scoro API has a single point of entry, derived from your account URL

Full url depends on the info requested.

Sample URL
https://#companyname#.scoro.com/api/v2

Please note the use of https:// in the URL above. All API communication is encrypted over HTTPS. Any non-secure requests are automatically rejected, so we recommend establishing a test connection with the secure API entry point before sending sensitive data.

Full address to send JSON requests looks like this

Full request url
https://#companyname#.scoro.com/api/#module#(/#action#)(/#id#)

where
#companyname# is the subdomain
#module# is the module accessed ("contacts")
#action# (optional) what to do with the selected object. Possible options are ("modify", "delete", "view"), see each module for a list of available actions
#id# (optional) what object to get

Release notes

Here are current and upcoming changes in API.

Changes in 18.9

Changes in 18.8

Changes in 18.7

Changes in 18.6

Changes compared to previous version v1

Request Limits

By default, all accounts have a request limit of 500 API requests per day. Additionally, a maximum of 100 results will be returned for list methods, regardless of the value sent with the per_page parameter. The page paramater can be used to request additional items.

Sample request with per_page and page parameters
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "per_page": 50,
    "page": 2,
    "request": []
}
Sample request with user_token
{
    "user_token": "USER_API_token",
    "lang": "eng",
    "company_account_id": "tutorial",
    "per_page": 50,
    "page": 2,
    "request": []
}

Representation Formats

All API requests are composed of light-weight JSON delivered as an HTTP POST request to the endpoint URL.

All JSON should be UTF-8 encoded.

Date and time values are of the form YYYY-MM-DDTHH:MM:SS+0000.
When not providing timezone info in the value then site default timezone is used.

Booleans are either 1 (true) or 0 (false).

Fields denoting percentages are passed as whole values, not decimals (e.g. 5 for five percent).

All requests should contain at least the following values:

The apiKey and company_account_id values are listed in Settings > External Connections > API.

Sample request in PHP using cURL
<?php

    define('API_KEY', 'API_hash');
    define('BASE_URL', 'https://#companyname#.scoro.com/api');

    $fields = array(
        'apiKey' => API_KEY,
        'lang' => 'eng',
        'company_account_id' => 'sample',
        'per_page' => '10'
    );
    $fieldsJson = json_encode($fields);

    $ch = curl_init();

    curl_setopt($ch, CURLOPT_URL, BASE_URL.'/contacts');
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $fieldsJson);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

    $result = curl_exec($ch);
    if ($result) {
        $contacts = json_decode($result, true);
        ?><pre><?print_r($contacts);?></pre><?
    }

?>
            

Responses

All responses are wrapped in a top-level response element. The status attribute will let you know whether the request succeeded or failed. Status can be OK or ERROR. The statusCode attribute can contain the following values:

Status code Response message Description
200 Success If data was requested, it will be available in the data field at the top level of the response body.
400 Invalid request This usually occurs because of a missing or malformed parameter. Check the documentation and the syntax of your request and try again.
401 No authorization A valid API key was not provided with the request, so the API could not associate a user with the request.
403 Forbidden The API key was wrong.
408 Request timed out The maximum execution time of the request was reached.
500 Server error There was a problem on our end.

In the event of an error, the response body will contain an messages field at the top level. This contains an array of at least one error message

Missing authorization header
Request https://#companyname#.scoro.com/api/contacts
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Response HTTP/1.1 200
{
    "status": "ERROR",
    "statusCode": "401",
    "messages": {
        "error": [
            "Missing Api Key"
        ]
    }
}
Bad request parameters
Request https://#companyname#.scoro.com/api/contacts
{
    "apiKey": "wrong",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Response HTTP/1.1 200
{
    "status": "ERROR",
    "statusCode": "403",
    "messages": {
        "error": [
            "Wrong Api Key"
        ]
    }
}
There was a problem on our end
Request https://#companyname#.scoro.com/api/contacts
{
    "apiKey": "API_hash",
    "lang": "abc",
    "company_account_id": "tutorial",
    "request": {}
}
Response HTTP/1.1 200
{
    "status": "ERROR",
    "statusCode": "500",
    "messages": {
        "error": [
            "Language code[lang] missing or wrong"
        ]
    }
}

Filters

List results can be filtered by adding a filter object to the request. This filter object should have field names as keys and search words as values. If filtering by a range the value should be another object containing from and/or to field.

Filter results
https://#companyname#.scoro.com/api/contacts
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "filter": {
        "name": "Sample%"
    }
}
Filtering by range
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "filter": {
        "modified_date": {
            "from_date": "2013-02-01",
            "to_date": "2013-02-28"
        }
    }
}
Filtering by custom fields
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "filter": {
        "custom_fields": {
            "field1": "value1",
            "field2": "value2"
        }
    }
}
Filtering with deleted entries
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "include_deleted": "1",
    "filter": {
        "modified_date": {
            "from_date": "2013-02-01",
            "to_date": "2013-02-28"
        }
    }
}

Custom fields

The field custom_fields contains the values for custom fields related to the main object. Custom_fields is structured as an array of objects with the following keys: id, name, value and type. Custom fields are not included for list requests.

Example custom_fields structure:
{
    "...": "...",
    "custom_fields": [
        {
            "id": "c_field1",
            "name": "Field 1",
            "value": "Value 1",
            "type": "text"
        },
        {
            "id": "c_field2",
            "name": "Field 2",
            "value": 123,
            "type": "number"
        }
    ]
}

To add/modify custom field values use an array of values

{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "e238865f83e2b04c09c5c8b39696d37sc",
    "request": {
        "name": "New Name",
        "addresses": [
            {
                "street": "Reading 13",
                "zipcode": "123"
            }
        ],
        "custom_fields": [
            {
                "id": "c_field1",
                "value": "Value 1"
            },
            {
                "id": "c_field2",
                "value": 123
            }
        ]
    }
}

Bookmarks

Used only for user based API and with list requests

Example request with bookmark object:
{
    "user_token": "userToken",
    "lang": "eng",
    "company_account_id": "tutorial",
    "bookmark": {
        "bookmark_filter_ignored": "true"
    },
    "request": {}
}
Bookmark field Data type Supported modules Description
bookmark_filter_ignored boolean all Can ignore bookmark filters and retrieve all objects that user can see. Will override all other bookmark options.
bookmark_id integer all Bookmark Id
bookmark_users array[integer] all User Ids to be used for filtering data
bookmark_projects array[integer] calendar,tasks Project Ids to be used for filtering data
bookmark_statuses array[string] calendar,tasks,projects Project Ids to be used for filtering data
bookmark_resources array[integer] calendar Resource Ids to be used for filtering data
bookmark_activities array[integer] calendar,tasks Activity Ids to be used for filtering data
bookmark_dates mixed[date] calendar,tasks Takes two required parameters "from_date" and "to_date" which you can filter the objects by. Value of "*" is general.
bookmark_tags mixed contacts,projects Takes list of tag Ids to be used for filtering data.
bookmark_priorities mixed tasks Takes list of priority Ids to be used for filtering data.
bookmark_categories array[integer] contacts Takes list of category Ids to be used for filtering data.
bookmark_keywords string all Takes a text string to be used for filtering data.
bookmark_types string contacts Takes a text string to be used for filtering data.
bookmark_client_profiles array[integer] contacts Takes list of client profile Ids to be used for filtering data.
bookmark_due_dates mixed[integer] tasks Takes two parameters "from" and "to". Are used for filtering out objects based on their due date.

Timezones

Contacts have their own timezone field. List of available timezones are shown here

Name Code
(GMT-12:00) International Date Line West Etc/GMT+12
(GMT-11:00) Midway Island, Samoa Pacific/Apia
(GMT-10:00) Hawaii Pacific/Honolulu
(GMT-09:00) Alaska America/Anchorage
(GMT-08:00) Pacific Time (US & Canada); Tijuana America/Los_Angeles
(GMT-07:00) Arizona America/Phoenix
(GMT-07:00) Mountain Time (US & Canada) America/Denver
(GMT-07:00) Chihuahua, La Paz, Mazatlan America/Chihuahua
(GMT-06:00) Central America America/Managua
(GMT-06:00) Saskatchewan America/Regina
(GMT-06:00) Guadalajara, Mexico City, Monterrey America/Mexico_City
(GMT-06:00) Central Time (US & Canada) America/Chicago
(GMT-05:00) Indiana (East) America/Indiana/Indianapolis
(GMT-05:00) Bogota, Lima, Quito America/Bogota
(GMT-05:00) Eastern Time (US & Canada) America/New_York
(GMT-04:00) Caracas, La Paz America/Caracas
(GMT-04:00) Santiago America/Santiago
(GMT-04:00) Atlantic Time (Canada) America/Halifax
(GMT-03:30) Newfoundland America/St_Johns
(GMT-03:00) Buenos Aires, Georgetown America/Argentina/Buenos_Aires
(GMT-03:00) Greenland America/Godthab
(GMT-03:00) Brasilia America/Sao_Paulo
(GMT-02:00) Mid-Atlantic America/Noronha
(GMT-01:00) Cape Verde Is. Atlantic/Cape_Verde
(GMT-01:00) Azores Atlantic/Azores
(GMT) Casablanca, Monrovia Africa/Casablanca
(CET) Central European Time CET
(GMT) Greenwich Mean Time : Dublin, Edinburgh, Lisbon, London Europe/London
(GMT+01:00) West Central Africa Africa/Lagos
(GMT+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna Europe/Berlin
(GMT+01:00) Brussels, Copenhagen, Madrid, Paris Europe/Paris
(GMT+01:00) Sarajevo, Skopje, Warsaw, Zagreb Europe/Sarajevo
(GMT+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague Europe/Belgrade
(GMT+02:00) Harare, Pretoria Africa/Johannesburg
(GMT+02:00) Jerusalem Asia/Jerusalem
(GMT+02:00) Athens Europe/Athens
(GMT+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius Europe/Helsinki
(GMT+02:00) Cairo Africa/Cairo
(GMT+02:00) Bucharest Europe/Bucharest
(GMT+03:00) Istanbul, Minsk Europe/Istanbul
(GMT+03:00) Nairobi Africa/Nairobi
(GMT+03:00) Kuwait, Riyadh Asia/Riyadh
(GMT+03:00) Moscow, St. Petersburg, Volgograd Europe/Moscow
(GMT+03:00) Baghdad Asia/Baghdad
(GMT+03:30) Tehran Asia/Tehran
(GMT+04:00) Abu Dhabi, Muscat Asia/Muscat
(GMT+04:00) Baku, Tbilisi, Yerevan Asia/Tbilisi
(GMT+04:30) Kabul Asia/Kabul
(GMT+05:00) Islamabad, Karachi, Tashkent Asia/Karachi
(GMT+05:00) Ekaterinburg Asia/Yekaterinburg
(GMT+05:30) Chennai, Kolkata, Mumbai, New Delhi Asia/Kolkata
(GMT+05:45) Kathmandu Asia/Kathmandu
(GMT+06:00) Sri Jayawardenepura Asia/Colombo
(GMT+06:00) Astana, Dhaka Asia/Dhaka
(GMT+06:00) Almaty, Novosibirsk Asia/Novosibirsk
(GMT+06:30) Rangoon Asia/Rangoon
(GMT+07:00) Bangkok, Hanoi, Jakarta Asia/Bangkok
(GMT+07:00) Krasnoyarsk Asia/Krasnoyarsk
(GMT+08:00) Perth Australia/Perth
(GMT+08:00) Taipei Asia/Taipei
(GMT+08:00) Kuala Lumpur, Singapore Asia/Singapore
(GMT+08:00) Beijing, Chongqing, Hong Kong, Urumqi Asia/Hong_Kong
(GMT+08:00) Irkutsk, Ulaan Bataar Asia/Irkutsk
(GMT+09:00) Osaka, Sapporo, Tokyo Asia/Tokyo
(GMT+09:00) Seoul Asia/Seoul
(GMT+09:00) Yakutsk Asia/Yakutsk
(GMT+09:30) Darwin Australia/Darwin
(GMT+09:30) Adelaide Australia/Adelaide
(GMT+10:00) Guam, Port Moresby Pacific/Guam
(GMT+10:00) Brisbane Australia/Brisbane
(GMT+10:00) Vladivostok Asia/Vladivostok
(GMT+10:00) Hobart Australia/Hobart
(GMT+10:00) Canberra, Melbourne, Sydney Australia/Sydney
(GMT+11:00) Magadan, Solomon Is., New Caledonia Asia/Magadan
(GMT+12:00) Fiji, Kamchatka, Marshall Is. Pacific/Fiji
(GMT+12:00) Auckland, Wellington Pacific/Auckland
(GMT+13:00) Nuku'alofa Pacific/Tongatapu

User Authorization

This is used for user based API. Every other user based request sent to Scoro should contain user_token
Name Type Description
token String user token received after successful authorization
username String users Scoro username
password String users Scoro password
device_id String device id to identify current device in Scoro. For example Instance ID https://developers.google.com/instance-id/
device_type String device type to identify OS like "android" or "iOS"
device_name String device name to describe current device in Scoro
device_token String token to identify a device. It is not a required field.

Available actions are

modify Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/userAuth/modify/(#id)
Description:
Getting user token. Request returns user token with user's basic settings.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {},
    "username": "juhan",
    "password": "someverysecurepassword",
    "device_type": "android",
    "device_name": "My phone",
    "device_id": "123456789987654321"
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": {
        "token": "e238865f83e2b04c09c5c8b39696d37c",
        "settings": {
            "user_id": 1,
            "master_company_account": "tutorial",
            "first_day_of_week": 1,
            "timezone": "Europe\/Helsinki",
            "locale_clock": "12",
            "locale_date": "%m\/%d\/%Y",
            "locale_number": {
                "thousandSeparator": "",
                "decimalSeparator": "."
            },
            "company_accounts": [
                {
                    "account_id": "tutorial"
                }
            ]
        }
    }
}
delete Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/userAuth/delete/(#id)
Description:
Invalidating current users token
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null
}
versionCheck Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/userAuth/versionCheck
Description:
Checking whether site supports API version 2. Successful result will return object with statusCode 200 and if the Api v2 is not supported then statusCode 400 will be returned
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": 200,
    "messages": null,
    "data": {
        "access": "true"
    }
}

Contacts

Name Type Description
contact_id Integer Contact ID
name String contact first name or company name
lastname String contact last name. Used only for persons
contact_type String possible values are "person" or "company". If none specified "company" is used
id_code String code for company or person
bankaccount String Contact bank account
birthday Date (YYYY-mm-dd) can be without a year
position String working position. CEO, manager etc.
comments String Contact comment.
sex String Possible values are "NULL", "F", "M"
vatno String VAT number
timezone String timezone codes to use are shown here
manager_id Integer Contact manager ID.
is_supplier Boolean If the company is a supplier or not.
is_client Boolean If the contact is a client or not.
client_profile_id Integer ID of the client profile
modified_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when contact was last modified.
deleted_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when contact was deleted.
addresses Array Array of objects containing the following address fields: country (3-letter ISO 3166 code), county, municipality, city, street, zipcode. Not used on company based API list requests.
means_of_contact Object Object containing any of the following fields: mobile, phone, email, website, skype, fax. Values can be strings or arrays if contact has multiple means of contact. Values will always be returned as arrays on view requests. Not used on company based API list requests.
tags Array Array of contact tags. Not used on list requests.
reference_no String Reference number for contact.
cat_id Integer Category id for contact.
cat_name String Category name for contact.
contact_users Array Contact related users.
permissions Array Object user permissions. Used only for user based API
custom_fields Object Custom fields. Only filled on view requests.
is_deleted Boolean Is deleted. Use 'include_deleted = 1' in request object to get deleted objects to response as well.

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/contacts/list
Description:
Get list of contacts with user token. Providing bookmark object to the request will filter the results based on the values provided.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {},
    "bookmark": {
        "bookmark_id": "111"
    }
}
Description:
Get basic data for the list by adding "basic_data" to the request object. Bookmark object is optional.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "basic_data": "1",
    "request": {},
    "bookmark": {
        "bookmark_id": "111"
    }
}
Description:
Get list of contacts with API key
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "API_hash",
    "request": {}
}
modify
Request URL:
https://#companyname#.scoro.com/api/v2/contacts/modify/(#id)
Description:
Modify specific contact or create a new one with user token. User needs to have permission to modify existing contact. Adding "return_data" parameter will control if object data will be returned with successful request.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {
        "name": "New Name",
        "addresses": [
            {
                "street": "Reading 13",
                "zipcode": "123"
            }
        ]
    }
}
Description:
Modify specific contact or create a new one with API key
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "API_hash",
    "request": {
        "name": "New Name",
        "addresses": [
            {
                "street": "Reading 13",
                "zipcode": "123"
            }
        ]
    }
}
Description:
Addresses parameter supports an array of address objects. Address object contains following parameters: street, zipcode, city, municipality, county, country. To modify existing address then contacts_addresses_id needs to be included in address object. In order to delete the existing address then provide only contacts_addresses_id in address object, contacts_addresses_id with all the other parameters empty or leave the address off from the request.
view
Request URL:
https://#companyname#.scoro.com/api/v2/contacts/view/(#id)
Description:
Get specific contact object with user token. User needs to have permission to view the object.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {}
}
Description:
Get specific contact object with API key
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "API_hash",
    "request": {}
}
delete
Request URL:
https://#companyname#.scoro.com/api/v2/contacts/delete/(#id)
Description:
Delete specific contact with user token. User needs to have permissions to delete the contact
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {}
}
Description:
Delete specific contact with API key
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "API_hash",
    "request": {}
}
filters Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/contacts/filters
Description:
Getting filters for module. Empty request object returns all filters for the module. Supplying list of bookmark fields to the request body and using per_page and page parameters will give remaining of the filter records.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": 200,
    "messages": null,
    "data": [
        {
            "values": [
                {
                    "item_id": 1,
                    "item_name": "John Smith"
                }
            ],
            "selected_value": {
                "item_id": [
                    1
                ],
                "item_name": "My contacts"
            },
            "settings": {
                "filter_id": "bookmark_users",
                "total_count": 1,
                "filter_name": "Users",
                "type": "type_checkbox"
            }
        }
    ]
}
Description:
Getting specific filter values
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "page": "1",
    "per_page": "50",
    "request": {
        "fields": [
            "bookmark_users",
            "bookmark_projects"
        ]
    }
}
getRelatedObjects Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/contacts/getRelatedObjects/(#id)
Description:
Get all related objects of another object. "modules" parameter in request object allows to filter results by module. "modules" parameter accepts an array of module names. Currently supported modules are contacts, tasks, calendar, projects, invoices, prepayments, bills, expenses, quotes, orders, files. User based API also supports planned_activities and past_activities.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": {
        "tasks": {
            "items": [],
            "totals": []
        },
        "calendar": {
            "items": [],
            "totals": []
        },
        "projects": {
            "items": [],
            "totals": []
        },
        "invoices": {
            "items": [],
            "totals": []
        },
        "prepayments": {
            "items": [],
            "totals": []
        },
        "bills": {
            "items": [],
            "totals": []
        },
        "quotes": {
            "items": [],
            "totals": []
        },
        "orders": {
            "items": [],
            "totals": []
        },
        "files": {
            "items": [],
            "totals": []
        }
    }
}
Request URL
https://#companyname#.scoro.com/api/contacts
Getting contacts list
https://#companyname#.scoro.com/api/contacts/ Request
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial"
}
Response
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": [
        {
            "contact_id": "1",
            "name": "",
            "id_code": "12345678",
            "bankaccount": null,
            "birthday": null,
            "position": null,
            "comments": null,
            "sex": null,
            "vatno": null
        }
    ]
}
Adding new contact
https://#companyname#.scoro.com/api/contacts/modify
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "name": "Testing 123",
        "lastname": "",
        "bankaccount": null,
        "birthday": "0000-00-00",
        "position": "",
        "comments": "",
        "sex": null,
        "id_code": null,
        "is_client": null,
        "is_supplier": null,
        "vatno": null
    }
}
Adding new contact
https://#companyname#.scoro.com/api/contacts/modify
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": {
        "contact_id": "236",
        "name": "Testing 123",
        "id_code": "",
        "bankaccount": null,
        "birthday": null,
        "position": null,
        "comments": null,
        "sex": null,
        "vatno": null
    }
}

Relations

This API can be used to list, modify and delete relations between objects (for example companies and persons).

Every request must provide the type of relation to operate on. Supported relation types:
Modify requests: will add relations between object_id and values in related_objects
Delete requests: if related_objects is specified will delete only those relations, otherwise all relations are removed from object_id

Name Type Description
object_id Integer Main object ID
related_objects Object Object containing related objects by types.
Each relation object has the following fields: {"id": #id#,"relation": #relation_name#, "comment" :#comment#, "is_default": #is_default#}
Relation field value has both sides of the relation and is separated by a "_" sign. The first half shows the relation of object defined by the "object_id" parameter. The second half shows what relation the related object has.
Relation value "company_person" is a systemic relation type between a company and person.
type String Relation objects type. Required on every request.
Getting list of company's related contacts
https://#companyname#.scoro.com/api/relations/ Request
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "object_id": 1,
        "type": "contacts"
    }
}
Response
{
    "status": "OK",
    "statusCode": 200,
    "messages": null,
    "data": {
        "object_id": 5,
        "related_objects": {
            "person": [
                {
                    "id": 4,
                    "relation": "company_person",
                    "is_default": "1"
                }
            ],
            "company": [
                {
                    "id": 2,
                    "relation": "customer_sub-customer",
                    "is_default": "0"
                }
            ]
        }
    }
}
Adding related company to a company
https://#companyname#.scoro.com/api/relations/modify Request
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "object_id": 5,
        "related_objects": [
            {
                "id": 6,
                "relation": "customer_sub-customer",
                "comment": "Comment for related contact"
            },
            {
                "id": 16,
                "relation": "company_person",
                "is_default": "1"
            }
        ],
        "type": "contacts"
    }
}
Response
{
    "status": "OK",
    "statusCode": "200",
    "messages": null
}
Deleting relation between two contacts
https://#companyname#.scoro.com/api/relations/delete Request
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "object_id": 7,
        "related_objects": [
            8
        ],
        "type": "contacts"
    }
}
Response
{
    "status": "OK",
    "statusCode": "200",
    "messages": null
}

Relation types

Name Type Description
relation_name String Relation systemic name
relation_side_one String Relation first side name
relation_side_two String Relation second side name
relation_object_type String Object type for which the relation can be set

Available actions are

list Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/relationTypes/list
Description:
Getting list of relation types.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": [
        {
            "relation_name": "company_subsidiary",
            "relation_side_one": "Company",
            "relation_side_two": "Subsidiary",
            "relation_object_type": "company"
        },
        {
            "relation_name": "partner_partner",
            "relation_side_one": "Partner",
            "relation_side_two": "Partner",
            "relation_object_type": "persons"
        }
    ]
}

Calendar events

Name Type Description
address String Event address.
start_datetime Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) Events start time.
end_datetime Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) Events end time.
full_day_event Boolean If this is a full day event.
status String Event status. Possible values: busy, free, tentative, outofoffice.
cal_user Array Users related with this event. Populated only on view requests. For modify requests it takes an array of user Id-s
resources Array Array of resources related to calendar event. Populated only on view requests.
related_task_id Integer Related Task ID. Used when calendar event is related to a task
activity_id Integer Activity ID
activity_type String Activity type. Not filterable.
event_id Integer Event ID
event_name String Event name.
description String Event description.
is_personal Boolean If event is personal or work related.
project_id Integer Related project ID.
project_name String Related project name. Used only for user based API.
company_id Integer Related company ID.
company_name String Related company name. Used only for user based API.
person_id Integer Related person ID.
person_name String Related person name. Used only for user based API.
invoice_id Integer Related invoice ID.
order_id Integer Related order ID.
quote_id Integer Related quote ID.
purchase_order_id Integer Related purchase order ID.
rent_order_id Integer Related rental order ID.
bill_id Integer Related bill ID.
duration_planned Time (HH:ii:ss) Events or tasks planned duration. Rounded to the nearest minute.
billable_hours Time (HH:ii:ss) Events billable duration. Rounded to nearest minute.
owner_id Integer User ID of the user that is responsible for the event.
modified_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when event was last modified.
created_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) Created date. Cannot be modified through API.
permissions Array Object user permissions. Used only for user based API
custom_fields Object Custom fields. Only filled on view requests.
is_deleted Boolean Is deleted. Use 'include_deleted = 1' in request object to get deleted objects to response as well.
deleted_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when object was deleted.

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/calendar/list
Description:
Get list of calendar events with user token. Providing bookmark object to the request will filter the results based on the values provided.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {},
    "bookmark": {
        "bookmark_id": "111"
    }
}
Description:
Get basic data for the list by adding "basic_data" to the request object. Bookmark object is optional.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "basic_data": "1",
    "request": {},
    "bookmark": {
        "bookmark_id": "111"
    }
}
Description:
Get list of calendar events with API key.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "API_hash",
    "request": {}
}
modify
Request URL:
https://#companyname#.scoro.com/api/v2/calendar/modify/(#id)
Description:
Modify specific calendar event or create a new one with user token. User needs to have permission to modify existing event. Adding "return_data" parameter will control if object data will be returned with successful request.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {
        "event_name": "New Name"
    }
}
Description:
Modify specific calendar event or create a new one with API key.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "API_hash",
    "request": {
        "event_name": "New Name"
    }
}
view
Request URL:
https://#companyname#.scoro.com/api/v2/calendar/view/(#id)
Description:
Get specific calendar event object with user token. User needs to have permission to view the object.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {}
}
Description:
Get specific calendar event object with API key.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "API_hash",
    "request": {}
}
delete
Request URL:
https://#companyname#.scoro.com/api/v2/calendar/delete/(#id)
Description:
Delete specific calendar event with user token. User needs to have permissions to delete the event.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {}
}
Description:
Delete specific calendar event with API key.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "API_hash",
    "request": {}
}
filters Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/calendar/filters
Description:
Getting filters for module. Empty request object returns all filters for the module. Supplying list of bookmark fields to the request body and using per_page and page parameters will give remaining of the filter records.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": [
        {
            "values": [
                {
                    "item_id": 1,
                    "item_name": "Test User"
                }
            ],
            "selected_value": {
                "item_id": {
                    "1": "1"
                },
                "item_name": "Test User"
            },
            "settings": {
                "filter_id": "bookmark_users",
                "total_count": 51,
                "filter_name": "Users",
                "type": "type_checkbox"
            }
        }
    ]
}
Description:
Getting specific filter values
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "page": "1",
    "per_page": "50",
    "request": {
        "fields": [
            "bookmark_users",
            "bookmark_projects"
        ]
    }
}
getRelatedObjects Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/calendar/getRelatedObjects/(#id)
Description:
Get all related objects of another object. "modules" parameter in request object allows to filter results by module. "modules" parameter accepts an array of module names. Currently supported modules are persons, companies, projects, invoices, bills, quotes, orders, files.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": {
        "persons": {
            "items": [],
            "totals": []
        },
        "companies": {
            "items": [],
            "totals": []
        },
        "projects": {
            "items": [],
            "totals": []
        },
        "invoices": {
            "items": [],
            "totals": []
        },
        "bills": {
            "items": [],
            "totals": []
        },
        "quotes": {
            "items": [],
            "totals": []
        },
        "orders": {
            "items": [],
            "totals": []
        },
        "files": {
            "items": [],
            "totals": []
        }
    }
}
check Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/calendar/check
Description:
Getting availability of users or resources. Also, supports users(Array) parameter and resources(Array) parameter. Duration(xx:xx) and start_dates(Array) are required.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "duration": "09:00",
        "start_dates": [
            "2016-12-01 09:00:00"
        ]
    }
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": {
        "availability": {
            "2016-12-01 09:00:00": {
                "users": {
                    "1": {
                        "user_id": 1,
                        "cal_status": "busy",
                        "resource_id": 48,
                        "start_datetime": "2016-12-01 13:00:00",
                        "overlapping_events": 4
                    }
                },
                "resources": {}
            }
        }
    }
}
Request URL
https://#companyname#.scoro.com/api/v2/calendar

Comments

Name Type Description
comment_id String Comment id
parent_id Integer Parent (comment) id
comment String Comment content
user_id Integer Comment owner id
modified_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) Modified datetime
permissions Array Object user permissions. Used only for user based API list request

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/comments/list
Description:
Sample list request for module "tasks" with id "123". Including "html" parameter with value 0 to request will strip html tags from comment content.
Example request body:
{
    "user_token": "USER_API_token",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "module": "tasks",
        "object_id": "123"
    }
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": [
        {
            "comment_id": 301,
            "comment": "Example comment"
        },
        {
            "comment_id": 302,
            "comment": "Example comment 2"
        }
    ]
}
modify
Request URL:
https://#companyname#.scoro.com/api/v2/comments/modify/(#id)
Description:
Sample add request for module "tasks" with id "123"
Example request body:
{
    "user_token": "USER_API_token",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "module": "tasks",
        "object_id": "123",
        "comment": "Example"
    }
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": {}
}
Description:
Sample modify request for module "tasks" with id "123"
Example request body:
{
    "user_token": "USER_API_token",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "module": "tasks",
        "object_id": "123",
        "comment": "Example changed"
    }
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": {}
}
Description:
Sample add request (reply to a comment) for module "tasks" with id "123"
Example request body:
{
    "user_token": "USER_API_token",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "module": "tasks",
        "object_id": "123",
        "comment": "Example changed",
        "parent_id": "122"
    }
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": {}
}
delete
Request URL:
https://#companyname#.scoro.com/api/v2/comments/delete/(#id)
Description:
Sample delete request (/delete/{comment_id})
Example request body:
{
    "user_token": "USER_API_token",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": 200,
    "messages": {}
}

Tasks

Name Type Description
is_completed Boolean Is completed.
datetime_completed Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) Tasks completion time. Has value if task is completed.
assigned_to Integer Deprecated User ID of the user performing the assigned task.
related_users Array Array of user IDs that the task is assigned to.
related_users_emails Array Array of user emails that the task is assigned to.
duration_actual Time (HH:ii:ss) Tasks actual duration. This field is read only - it is calculated based on task time entries.
datetime_due Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) Tasks due date.
status String Possible values: task_status1, task_status2, task_status3, task_status4.
time_entries Array Array of tasks' time entries. Populated only on view requests.
sortorder Integer Task sort order in list.
ete_id Integer Task time entry id. Value will be filled only when task time entry is separately in the user based list request, else its value will be 0.
activity_id Integer Activity ID
activity_type String Activity type. Not filterable.
event_id Integer Event ID
event_name String Event name.
description String Event description.
is_personal Boolean If event is personal or work related.
project_id Integer Related project ID.
project_name String Related project name. Used only for user based API.
company_id Integer Related company ID.
company_name String Related company name. Used only for user based API.
person_id Integer Related person ID.
person_name String Related person name. Used only for user based API.
invoice_id Integer Related invoice ID.
order_id Integer Related order ID.
quote_id Integer Related quote ID.
purchase_order_id Integer Related purchase order ID.
rent_order_id Integer Related rental order ID.
bill_id Integer Related bill ID.
duration_planned Time (HH:ii:ss) Events or tasks planned duration. Rounded to the nearest minute.
billable_hours Time (HH:ii:ss) Events billable duration. Rounded to nearest minute.
owner_id Integer User ID of the user that is responsible for the event.
modified_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when event was last modified.
created_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) Created date. Cannot be modified through API.
permissions Array Object user permissions. Used only for user based API
custom_fields Object Custom fields. Only filled on view requests.
is_deleted Boolean Is deleted. Use 'include_deleted = 1' in request object to get deleted objects to response as well.
deleted_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when object was deleted.

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/tasks/list
Description:
Get list of tasks with user token. Providing bookmark object to the request will filter the results based on the values provided.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {},
    "bookmark": {
        "bookmark_id": "111"
    }
}
Description:
Get basic data for the list by adding "basic_data" to the request object. Bookmark object is optional.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "basic_data": "1",
    "request": {},
    "bookmark": {
        "bookmark_id": "111"
    }
}
Description:
Get list of tasks with API key
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "API_hash",
    "request": {}
}
modify
Request URL:
https://#companyname#.scoro.com/api/v2/tasks/modify/(#id)
Description:
Modify specific task or create a new one with user token. Adding "return_data" parameter will control if object data will be returned with successful request.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {
        "event_name": "New Name"
    }
}
Description:
Modify specific task or create a new one with API key
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "API_hash",
    "request": {
        "event_name": "New Name"
    }
}
Description:
Time entries: To delete a task time entry then add is_deleted = "1" to the time entry parameters list. Otherwise, add only the time entries that you want to add or modify.
view
Request URL:
https://#companyname#.scoro.com/api/v2/tasks/view/(#id)
Description:
Get specific task object with user token
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {}
}
Description:
Get specific task object with API key
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "API_hash",
    "request": {}
}
delete
Request URL:
https://#companyname#.scoro.com/api/v2/tasks/delete/(#id)
Description:
Delete specific task with user token
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {}
}
Description:
Delete specific task with API key
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "API_hash",
    "request": {}
}
filters Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/tasks/filters
Description:
Getting filters for module. Empty request object returns all filters for the module. Supplying list of bookmark fields to the request body and using per_page and page parameters will give remaining of the filter records.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": 200,
    "messages": null,
    "data": [
        {
            "values": [
                {
                    "item_id": 1,
                    "item_name": "John Smith"
                }
            ],
            "selected_value": {
                "item_id": [
                    1
                ],
                "item_name": "My tasks"
            },
            "settings": {
                "filter_id": "bookmark_users",
                "total_count": 1,
                "filter_name": "Users",
                "type": "type_checkbox"
            }
        }
    ]
}
sorting Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/tasks/sorting
Description:
Setting sort order for tasks. Requests expects an array of task Ids.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {
        "taskIds": [
            "111111",
            "333333",
            "2222222"
        ]
    }
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null
}
getRelatedObjects Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/tasks/getRelatedObjects/(#id)
Description:
Get all related objects of another object. "modules" parameter in request object allows to filter results by module. "modules" parameter accepts an array of module names. Currently supported modules are persons, companies, projects, invoices, bills, quotes, orders, files, time_entries.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": {
        "persons": {
            "items": [],
            "totals": []
        },
        "companies": {
            "items": [
                {
                    "contact_id": 30,
                    "name": "Tutorial O\u00dc",
                    "lastname": "",
                    "contact_type": "company",
                    "id_code": "1287230",
                    "bankaccount": "22100092134",
                    "birthday": null,
                    "position": "",
                    "comments": "",
                    "sex": null,
                    "vatno": "98235349873",
                    "timezone": null,
                    "manager_id": 1,
                    "is_supplier": "",
                    "is_client": "1",
                    "modified_date": "2012-09-28 15:30:00",
                    "addresses": null,
                    "means_of_contact": null,
                    "tags": null,
                    "reference_no": "",
                    "custom_fields": null,
                    "is_deleted": null
                }
            ],
            "totals": {
                "totalCount": 1
            }
        },
        "projects": {
            "items": [],
            "totals": {}
        },
        "invoices": {
            "items": [],
            "totals": []
        },
        "bills": {
            "items": [],
            "totals": []
        },
        "quotes": {
            "items": [],
            "totals": []
        },
        "orders": {
            "items": [],
            "totals": []
        },
        "files": {
            "items": [],
            "totals": []
        }
    }
}
setDone Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/tasks/setDone/(#id)
Description:
Setting task as done.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null
}
Request URL
https://#companyname#.scoro.com/api/v2/tasks

Time entries

Name Type Description
time_entry_id Integer Time entry ID.
description String Description.
title String Time Entry title. It will be constructed dynamically based on description and activity id values.
user_id Integer Related user ID.
activity_id Integer Related activity ID.
invoice_line_id Integer Related invoice line ID.
event_id Integer Related event ID.
start_datetime Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) Planned start date and time.
end_datetime Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) Planned end date and time.
duration Time (HH:ii:ss) Time entry duration. Rounded to the nearest minute.
billable_duration Time (HH:ii:ss) Billable duration for time entry. Only used if site has billable hours feature activated. Rounded to the nearest minute.
is_completed Boolean Is the time entry completed or not.
is_confirmed Boolean Is the time entry confirmed or not.
is_billable Boolean Is the time entry billable or not.
completed_datetime Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) Date and time when the time entry was completed. Will be set to current time, if time entry is completed and no datetime provided.
permissions Array Object user permissions. Used only for user based API
is_deleted Boolean Is deleted. Use 'include_deleted = 1' in request object to get deleted objects to response as well.
deleted_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when object was deleted.

Available actions are

setDone Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/timeEntries/setDone/(#id)
Description:
Setting time entry as done.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null
}
modify Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/timeEntries/modify/(#id)
Description:
Adding new and modifying current time entries. Event ID is mandatory for new time entries. Adding "return_data" parameter will control if object data will be returned with successful request.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "event_id": "1"
    }
}
Example response body:
{
    "status": "OK",
    "statusCode": 200,
    "messages": null,
    "data": {
        "time_entry_id": 1,
        "description": "",
        "title": "",
        "user_id": 1,
        "activity_id": 0,
        "invoice_line_id": 0,
        "start_datetime": "2016-03-25T15:47:20+02:00",
        "duration": "00:30:00",
        "billable_duration": "00:25:00",
        "is_completed": 1,
        "completed_datetime": "2016-03-25T15:47:20+02:00",
        "is_deleted": 0
    }
}
delete Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/timeEntries/delete/(#id)
Description:
Deleting time entry.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null
}
list Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/timeEntries/list
Description:
Listing time entries.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": 200,
    "messages": null,
    "data": [
        {
            "time_entry_id": 1,
            "description": "",
            "title": "",
            "user_id": 1,
            "activity_id": 0,
            "invoice_line_id": 0,
            "event_id": 1,
            "start_datetime": "2017-03-13T18:00:00+02:00",
            "duration": "01:00:00",
            "billable_duration": "00:00:00",
            "is_completed": 0,
            "is_confirmed": 0,
            "is_billable": 0,
            "completed_datetime": null,
            "is_deleted": 0,
            "deleted_date": null
        }
    ]
}
view Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/timeEntries/view/(#id)
Description:
View time entry.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": 200,
    "messages": null,
    "data": {
        "time_entry_id": 1,
        "description": "",
        "title": "",
        "user_id": 3,
        "activity_id": 0,
        "invoice_line_id": 0,
        "event_id": 48,
        "start_datetime": "2010-03-16T11:00:00+02:00",
        "duration": "01:30:00",
        "billable_duration": "00:00:00",
        "is_completed": 0,
        "is_confirmed": 0,
        "is_billable": 0,
        "completed_datetime": null,
        "is_deleted": 0,
        "deleted_date": null
    }
}

Event Resources

Name Type Description
resource_id Integer Event resource ID.
resource_name String Event resource name.
resource_color String Event resource colour set in Scoro. Format is in hex "#ffffff"
modified_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when resource was last modified.

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/eventsResources/list
view
Request URL:
https://#companyname#.scoro.com/api/v2/eventsResources/view/(#id)
Request URL
https://#companyname#.scoro.com/api/eventsResources

Invoices

Name Type Description
payment_type String Payment type, possible values are banktransfer, cash, cardpayment, credit, barter
fine String Fine percent per day
quote_id Array Related quote ID-s.
order_id Array Related order ID-s.
credited_invoices Array Credited invoices ID-s. Multiple invoices can be linked with one credit invoice.
prepayment_sum Float Prepayment sum (only for view command).
real_estate_id Integer Related real estate ID.
reference_no String Invoice reference number.
id Integer Document ID
no Integer Document number.
discount Float Overall discount.
discount2 Float or None First additional discount.
discount3 Float or None Second additional discount.
sum Decimal (15,2) Total sum after discounts without VAT. This value is ignored on modify and calculated from rows instead.
vat_sum Decimal (15,2) Total VAT sum. This value is ignored on modify and calculated from rows instead.
vat Decimal(5,3) VAT percent. Only used if line based VAT setting is not activated.
vat_code_id Integer Invoice default vat_code_id
company_id Integer ID of the related client.
person_id Integer ID of the related contact person.
company_address_id Integer If a company has multiple addresses, use this field to set which address is used on the document. If company_address_id is not specified, default address will be used.
interested_party_id Integer ID of the interested party. Only used if site has interested party feature activated.
interested_party_address_id Integer See company_address_id. Only used if site has interested party feature activated.
project_id Integer ID of the related project. If ID is -1 then each document line can have a different related project.
currency String Used currency. The default currency for site is used on modify if currency is missing or invalid.
owner_id Integer User ID of the user that is responsible for the document.
date Date (YYYY-mm-dd) Document date
deadline Date (YYYY-mm-dd) Document deadline
status String Status of the document (paid, unpaid)
description String Document description
account_id String Related company account. The account from the main request object is used on modify.
is_sent Boolean If document is sent. (Cannot unset when document is sent via Scoro)
lines Array Document lines. Lines will be null for list request and is only filled for view requests.
modified_date Datetime (YYYY-mm-dd HH:ii:ss) The date when document was last modified.
custom_fields Object Custom fields. Only filled on view requests.
is_deleted Boolean Is deleted. Use 'include_deleted = 1' in request object to get deleted objects to response as well.
deleted_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when object was deleted.

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/invoices/list
Description:
Get list of invoices with API key.
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Description:
Get list of invoices with user token. Providing bookmark object to the request will filter the results based on the values provided.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {},
    "bookmark": {
        "bookmark_id": "111"
    }
}
modify
Request URL:
https://#companyname#.scoro.com/api/v2/invoices/modify/(#id)
Description:
Adding invoice
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "date": "2018-04-01",
        "deadline": "2018-04-14",
        "currency": "EUR",
        "no": "123",
        "company_id": "1",
        "company_name": "Test",
        "description": "Description",
        "owner_id": "1",
        "owner_username": "tester",
        "payment_type": "cash",
        "fine": 0.6,
        "discount": "10",
        "lines": [
            {
                "project_id": "1",
                "vat": "20",
                "product_id": "1",
                "price": "100",
                "amount": "2",
                "unit": "h",
                "depot_amounts": [
                    {
                        "depot_id": 1,
                        "amount": 1,
                        "serial_no": "A123"
                    },
                    {
                        "depot_id": 2,
                        "amount": 1,
                        "serial_no": "A321"
                    }
                ]
            },
            {
                "project_id": "1",
                "vat": "20",
                "product_id": "1",
                "price": "50",
                "amount": "5",
                "unit": "h"
            }
        ]
    }
}
view
Request URL:
https://#companyname#.scoro.com/api/v2/invoices/view/(#id)
Description:
View specific object.
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
delete
Request URL:
https://#companyname#.scoro.com/api/v2/invoices/delete/(#id)
Description:
Delete specific object.
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Request URL
https://#companyname#.scoro.com/api/invoices

Invoice lines

Invoice lines do not have direct endpoints via API.
You can retrive info about invoice lines by making a view request to get info about an existing invoice.
You can add and modify invoice lines by making a modify request to add or modify an invoice.
Data about invoice lines gets passed along in invoice objects lines field.


Name Type Description
depot_amounts Array Array of objects containing the fields depot_id, amount, serial_no for each depot from which products should be taken.
id Integer Document line ID
product_id Integer ID of the product.
comment String Line comment.
comment2 String Second line comment. Only used if "Use additional comments on lines" setting is activated.
price Decimal (15,4) Unit price.
amount Decimal (15,2) Amount.
amount2 Decimal (15,2) Additional amount. Only used if "Use additional amount" setting is activated.
discount Float Line discount. Only used if "Use line based discount" setting is activated.
sum Decimal (15,2) Line sum without VAT.
vat Decimal (5,2) Line tax percent. Only used if "Use line based tax rates" setting is activated.
vat_code_id Integer Line tax id. Only used if "Use line based tax rates" setting is activated.
unit String Unit name.
finance_object_id Integer ID of the related accounting object. Only used if "Use accounting objects" setting is activated.
finance_account_id Integer ID of the related finance account. Only used if "Use finance accounts" setting is activated.
cost Decimal(15,4) Line cost. Only used if "Use margin" setting is activated.
supplier_id Integer ID of the contact supplying the product on this line. Only used if "Use margin" setting is activated.
project_id Integer ID of the related project.
custom_fields Object Custom fields. Only filled on view requests.

Prepayments

Name Type Description
fine String Fine percent per day
quote_id Integer Related quote ID.
order_id Integer Related order ID.
prepayment_percent Float Percent to pay in advance.
id Integer Document ID
no Integer Document number.
discount Float Overall discount.
discount2 Float or None First additional discount.
discount3 Float or None Second additional discount.
sum Decimal (15,2) Total sum after discounts without VAT. This value is ignored on modify and calculated from rows instead.
vat_sum Decimal (15,2) Total VAT sum. This value is ignored on modify and calculated from rows instead.
vat Decimal(5,3) VAT percent. Only used if line based VAT setting is not activated.
vat_code_id Integer Invoice default vat_code_id
company_id Integer ID of the related client.
person_id Integer ID of the related contact person.
company_address_id Integer If a company has multiple addresses, use this field to set which address is used on the document. If company_address_id is not specified, default address will be used.
interested_party_id Integer ID of the interested party. Only used if site has interested party feature activated.
interested_party_address_id Integer See company_address_id. Only used if site has interested party feature activated.
project_id Integer ID of the related project. If ID is -1 then each document line can have a different related project.
currency String Used currency. The default currency for site is used on modify if currency is missing or invalid.
owner_id Integer User ID of the user that is responsible for the document.
date Date (YYYY-mm-dd) Document date
deadline Date (YYYY-mm-dd) Document deadline
status String Status of the document (paid, unpaid)
description String Document description
account_id String Related company account. The account from the main request object is used on modify.
is_sent Boolean If document is sent. (Cannot unset when document is sent via Scoro)
lines Array Document lines. Lines will be null for list request and is only filled for view requests.
modified_date Datetime (YYYY-mm-dd HH:ii:ss) The date when document was last modified.
custom_fields Object Custom fields. Only filled on view requests.
is_deleted Boolean Is deleted. Use 'include_deleted = 1' in request object to get deleted objects to response as well.
deleted_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when object was deleted.

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/prepayments/list
Description:
Get list of prepayments with API key.
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Description:
Get list of prepayments with user token. Providing bookmark object to the request will filter the results based on the values provided.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {},
    "bookmark": {
        "bookmark_id": "111"
    }
}
modify
Request URL:
https://#companyname#.scoro.com/api/v2/prepayments/modify/(#id)
Description:
Modify specific object.
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "description": "New description"
    }
}
view
Request URL:
https://#companyname#.scoro.com/api/v2/prepayments/view/(#id)
Description:
View specific object.
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
delete
Request URL:
https://#companyname#.scoro.com/api/v2/prepayments/delete/(#id)
Description:
Delete specific object.
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Request URL
https://#companyname#.scoro.com/api/invoices/prepayments

Prepayment lines

Prepayment lines do not have direct endpoints via API.
You can retrive info about prepayment lines by making a view request to get info about an existing prepayment.
You can add and modify prepayment lines by making a modify request to add or modify a prepayment.
Data about prepayment lines gets passed along in prepayment objects lines field.


Name Type Description
id Integer Document line ID
product_id Integer ID of the product.
comment String Line comment.
comment2 String Second line comment. Only used if "Use additional comments on lines" setting is activated.
price Decimal (15,4) Unit price.
amount Decimal (15,2) Amount.
amount2 Decimal (15,2) Additional amount. Only used if "Use additional amount" setting is activated.
discount Float Line discount. Only used if "Use line based discount" setting is activated.
sum Decimal (15,2) Line sum without VAT.
vat Decimal (5,2) Line tax percent. Only used if "Use line based tax rates" setting is activated.
vat_code_id Integer Line tax id. Only used if "Use line based tax rates" setting is activated.
unit String Unit name.
finance_object_id Integer ID of the related accounting object. Only used if "Use accounting objects" setting is activated.
finance_account_id Integer ID of the related finance account. Only used if "Use finance accounts" setting is activated.
cost Decimal(15,4) Line cost. Only used if "Use margin" setting is activated.
supplier_id Integer ID of the contact supplying the product on this line. Only used if "Use margin" setting is activated.
project_id Integer ID of the related project.
custom_fields Object Custom fields. Only filled on view requests.

Scheduled Invoices

Name Type Description
payment_type String Payment type, possible values are banktransfer, cash, cardpayment, credit, barter
fine String Fine percent per day
quote_id Integer Related quote ID.
order_id Integer Related order ID.
real_estate_id Integer Related real estate ID.
deadline_days Integer Invoice deadline in days.
generate_type String Scheduled invoice generation type (last_day_of_month, monthly, quarterly, single, yearly)
next_generation_date Date (YYYY-mm-dd) Date when the next invoice will be generated
mark_paid_from_prepayment Boolean If the client has prepayment balance, then the invoice will use it
auto_send Boolean Send invoice automatically to the client
lang String Language of the invoices that are generated
message String Content of the e-mail
mail_from_name String Email alias name
mail_from String Invoice e-mail from address
cc String CC address of the email that will be sent with the invoice
bcc String BCC address of the email that will be sent with the invoice
use_signature Boolean Use the invoice owner's signature for the email
default_template_id Integer ID of the invoice PDF template that will be used
id Integer Document ID
discount Float Overall discount.
discount2 Float or None First additional discount.
discount3 Float or None Second additional discount.
sum Decimal (15,2) Total sum after discounts without VAT. This value is ignored on modify and calculated from rows instead.
vat_sum Decimal (15,2) Total VAT sum. This value is ignored on modify and calculated from rows instead.
vat Decimal(5,3) VAT percent. Only used if line based VAT setting is not activated.
vat_code_id Integer Invoice default vat_code_id
company_id Integer ID of the related client.
person_id Integer ID of the related contact person.
company_address_id Integer If a company has multiple addresses, use this field to set which address is used on the document. If company_address_id is not specified, default address will be used.
interested_party_id Integer ID of the interested party. Only used if site has interested party feature activated.
interested_party_address_id Integer See company_address_id. Only used if site has interested party feature activated.
project_id Integer ID of the related project. If ID is -1 then each document line can have a different related project.
currency String Used currency. The default currency for site is used on modify if currency is missing or invalid.
owner_id Integer User ID of the user that is responsible for the document.
status String Status of the document (active, tentative, archived)
description String Document description
account_id String Related company account. The account from the main request object is used on modify.
is_sent Boolean If document is sent. (Cannot unset when document is sent via Scoro)
lines Array Document lines. Lines will be null for list request and is only filled for view requests.
modified_date Datetime (YYYY-mm-dd HH:ii:ss) The date when document was last modified.
custom_fields Object Custom fields. Only filled on view requests.
is_deleted Boolean Is deleted. Use 'include_deleted = 1' in request object to get deleted objects to response as well.
deleted_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when object was deleted.

Available actions are

list Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/invoices/scheduledInvoices/list
modify Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/invoices/scheduledInvoices/modify/(#id)
view Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/invoices/scheduledInvoices/view/(#id)
delete Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/invoices/scheduledInvoices/delete/(#id)
Request URL
https://#companyname#.scoro.com/api/invoices/scheduledInvoices

Scheduled invoice lines

Scheduled invoice lines do not have direct endpoints via API.
You can retrive info about scheduled invoice lines by making a view request to get info about an existing scheduled invoice.
You can add and modify scheduled invoice lines by making a modify request to add or modify a scheduled invoice.
Data about scheduled invoice lines gets passed along in scheduled invoice objects lines field.


Name Type Description
id Integer Document line ID
product_id Integer ID of the product.
comment String Line comment.
comment2 String Second line comment. Only used if "Use additional comments on lines" setting is activated.
price Decimal (15,4) Unit price.
amount Decimal (15,2) Amount.
amount2 Decimal (15,2) Additional amount. Only used if "Use additional amount" setting is activated.
discount Float Line discount. Only used if "Use line based discount" setting is activated.
sum Decimal (15,2) Line sum without VAT.
vat Decimal (5,2) Line tax percent. Only used if "Use line based tax rates" setting is activated.
vat_code_id Integer Line tax id. Only used if "Use line based tax rates" setting is activated.
unit String Unit name.
finance_object_id Integer ID of the related accounting object. Only used if "Use accounting objects" setting is activated.
finance_account_id Integer ID of the related finance account. Only used if "Use finance accounts" setting is activated.
cost Decimal(15,4) Line cost. Only used if "Use margin" setting is activated.
supplier_id Integer ID of the contact supplying the product on this line. Only used if "Use margin" setting is activated.
project_id Integer ID of the related project.
custom_fields Object Custom fields. Only filled on view requests.

Receipt Groups

Receipts can only be added. Existing receipts can't be modified.
This means the request must not contain id on modify requests.

Name Type Description
id Integer Document ID
date Date (YYYY-mm-dd) Receipt date.
contact_id Integer Related contact ID.
sum Decimal (15,2) Receipt sum.
currency String ISO 4217 currency code. System default is used if no currency given.
sales_doc_type String doc type for receipt. Possible values "invoices", "bills". Default "invoices".
receipt_account_id Integer Receipt account ID.
receipts Array Receipts.
modified_date Datetime (YYYY-mm-dd HH:ii:ss) The date when receipt group was last modified.
custom_fields Object Custom fields. Only filled on view requests.
is_deleted Boolean Is deleted. Use 'include_deleted = 1' in request object to get deleted objects to response as well.
deleted_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when object was deleted.

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/receipts/list
modify
Request URL:
https://#companyname#.scoro.com/api/v2/receipts/modify/(#id)
delete
Request URL:
https://#companyname#.scoro.com/api/v2/receipts/delete/(#id)
Request URL
https://#companyname#.scoro.com/api/receipts
Sample list request for all receipts for contact id 1
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "filter": {
        "contact_id": "1"
    }
}
Sample add new receiptGroup request
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "date": "2013-10-18",
        "contact_id": "12",
        "sum": "123.00",
        "currency": "EUR",
        "receipts": [
            {
                "date": "2013-10-18",
                "invoice_id": "96",
                "sum": "100.00"
            },
            {
                "date": "2013-10-18",
                "invoice_id": "102",
                "sum": "23.00"
            }
        ]
    }
}

Receipts

Receipts do not have direct endpoints via API.
You can retrive info about receipts by making a view request to get info about an existing receipt group.
You can add and modify receipts by making a modify request to add or modify a receipt group.
Data about receipts gets passed along in receipt group objects receipts field.


Name Type Description
receipt_id Integer Receipt ID.
date Date (YYYY-mm-dd) Receipt date.
invoice_id Integer Related invoice ID.
prepayment_id Integer Related prepayment invoice ID.
sum Decimal (15,2) Receipt sum.
sales_doc_type String doc type for receipt. Possible values "invoices", "bills". Default "invoices".
contact_id Integer Related contact ID.
contact_name String Related contact name.

Receipt Accounts

Receipt account information can only be viewed.
Name Type Description
id Integer Receipt account ID.
name String Name of the service provider.
type String Type of service provider.

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/receipts/list
modify
Request URL:
https://#companyname#.scoro.com/api/v2/receipts/modify/(#id)
delete
Request URL:
https://#companyname#.scoro.com/api/v2/receipts/delete/(#id)
Request URL
https://#companyname#.scoro.com/api/receiptAccounts
Sample list request for receipt account with id 1
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "filter": {
        "id": "1"
    }
}

Quotes

Name Type Description
confirmed_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) Quote confirmed date.
estimated_closing_date Date (YYYY-mm-dd) Date when quote is estimated to be set to closed status.
id Integer Document ID
no Integer Document number.
discount Float Overall discount.
discount2 Float or None First additional discount.
discount3 Float or None Second additional discount.
sum Decimal (15,2) Total sum after discounts without VAT. This value is ignored on modify and calculated from rows instead.
vat_sum Decimal (15,2) Total VAT sum. This value is ignored on modify and calculated from rows instead.
vat Decimal(5,3) VAT percent. Only used if line based VAT setting is not activated.
vat_code_id Integer Invoice default vat_code_id
company_id Integer ID of the related client.
person_id Integer ID of the related contact person.
company_address_id Integer If a company has multiple addresses, use this field to set which address is used on the document. If company_address_id is not specified, default address will be used.
interested_party_id Integer ID of the interested party. Only used if site has interested party feature activated.
interested_party_address_id Integer See company_address_id. Only used if site has interested party feature activated.
project_id Integer ID of the related project. If ID is -1 then each document line can have a different related project.
currency String Used currency. The default currency for site is used on modify if currency is missing or invalid.
owner_id Integer User ID of the user that is responsible for the document.
date Date (YYYY-mm-dd) Document date
deadline Date (YYYY-mm-dd) Document deadline
status String Status of the document (approved, completed, declined, incomplete, pending, ready)
description String Document description
account_id String Related company account. The account from the main request object is used on modify.
is_sent Boolean If document is sent. (Cannot unset when document is sent via Scoro)
lines Array Document lines. Lines will be null for list request and is only filled for view requests.
modified_date Datetime (YYYY-mm-dd HH:ii:ss) The date when document was last modified.
custom_fields Object Custom fields. Only filled on view requests.
is_deleted Boolean Is deleted. Use 'include_deleted = 1' in request object to get deleted objects to response as well.
deleted_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when object was deleted.

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/quotes/list
Description:
Get list of quotes with API key.
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Description:
Get list of quotes with user token. Providing bookmark object to the request will filter the results based on the values provided.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {},
    "bookmark": {
        "bookmark_id": "111"
    }
}
modify
Request URL:
https://#companyname#.scoro.com/api/v2/quotes/modify/(#id)
Description:
Modify specific object.
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "description": "New description"
    }
}
view
Request URL:
https://#companyname#.scoro.com/api/v2/quotes/view/(#id)
Description:
View specific object.
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
delete
Request URL:
https://#companyname#.scoro.com/api/v2/quotes/delete/(#id)
Description:
Delete specific object.
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Request URL
https://#companyname#.scoro.com/api/quotes

Quote lines

Quote lines do not have direct endpoints via API.
You can retrive info about quote lines by making a view request to get info about an existing quote.
You can add and modify quote lines by making a modify request to add or modify a quote.
Data about quote lines gets passed along in quote objects lines field.


Name Type Description
dates Object Object with dates as keys and amounts as values. Empty on list requests.
is_confirmed boolean Quote line confirmation state
id Integer Document line ID
product_id Integer ID of the product.
comment String Line comment.
comment2 String Second line comment. Only used if "Use additional comments on lines" setting is activated.
price Decimal (15,4) Unit price.
amount Decimal (15,2) Amount.
amount2 Decimal (15,2) Additional amount. Only used if "Use additional amount" setting is activated.
discount Float Line discount. Only used if "Use line based discount" setting is activated.
sum Decimal (15,2) Line sum without VAT.
vat Decimal (5,2) Line tax percent. Only used if "Use line based tax rates" setting is activated.
vat_code_id Integer Line tax id. Only used if "Use line based tax rates" setting is activated.
unit String Unit name.
finance_object_id Integer ID of the related accounting object. Only used if "Use accounting objects" setting is activated.
finance_account_id Integer ID of the related finance account. Only used if "Use finance accounts" setting is activated.
cost Decimal(15,4) Line cost. Only used if "Use margin" setting is activated.
supplier_id Integer ID of the contact supplying the product on this line. Only used if "Use margin" setting is activated.
project_id Integer ID of the related project.
custom_fields Object Custom fields. Only filled on view requests.

Orders

Name Type Description
quote_id Integer Related quote ID.
id Integer Document ID
no Integer Document number.
discount Float Overall discount.
discount2 Float or None First additional discount.
discount3 Float or None Second additional discount.
sum Decimal (15,2) Total sum after discounts without VAT. This value is ignored on modify and calculated from rows instead.
vat_sum Decimal (15,2) Total VAT sum. This value is ignored on modify and calculated from rows instead.
vat Decimal(5,3) VAT percent. Only used if line based VAT setting is not activated.
vat_code_id Integer Invoice default vat_code_id
company_id Integer ID of the related client.
person_id Integer ID of the related contact person.
company_address_id Integer If a company has multiple addresses, use this field to set which address is used on the document. If company_address_id is not specified, default address will be used.
interested_party_id Integer ID of the interested party. Only used if site has interested party feature activated.
interested_party_address_id Integer See company_address_id. Only used if site has interested party feature activated.
project_id Integer ID of the related project. If ID is -1 then each document line can have a different related project.
currency String Used currency. The default currency for site is used on modify if currency is missing or invalid.
owner_id Integer User ID of the user that is responsible for the document.
date Date (YYYY-mm-dd) Document date
deadline Date (YYYY-mm-dd) Document deadline
status String Status of the document (approved, completed, declined, incomplete, pending)
description String Document description
account_id String Related company account. The account from the main request object is used on modify.
is_sent Boolean If document is sent. (Cannot unset when document is sent via Scoro)
lines Array Document lines. Lines will be null for list request and is only filled for view requests.
modified_date Datetime (YYYY-mm-dd HH:ii:ss) The date when document was last modified.
custom_fields Object Custom fields. Only filled on view requests.
is_deleted Boolean Is deleted. Use 'include_deleted = 1' in request object to get deleted objects to response as well.
deleted_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when object was deleted.

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/orders/list
Description:
Get list of orders with API key.
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Description:
Get list of orders with user token. Providing bookmark object to the request will filter the results based on the values provided.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {},
    "bookmark": {
        "bookmark_id": "111"
    }
}
modify
Request URL:
https://#companyname#.scoro.com/api/v2/orders/modify/(#id)
Description:
Modify specific object.
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "description": "New description"
    }
}
view
Request URL:
https://#companyname#.scoro.com/api/v2/orders/view/(#id)
Description:
View specific object.
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
delete
Request URL:
https://#companyname#.scoro.com/api/v2/orders/delete/(#id)
Description:
Delete specific object.
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Request URL
https://#companyname#.scoro.com/api/orders

Order lines

Order lines do not have direct endpoints via API.
You can retrive info about order lines by making a view request to get info about an existing order.
You can add and modify order lines by making a modify request to add or modify a order.
Data about order lines gets passed along in order objects lines field.


Name Type Description
dates Object Object with dates as keys and amounts as values. Empty on list requests.
id Integer Document line ID
product_id Integer ID of the product.
comment String Line comment.
comment2 String Second line comment. Only used if "Use additional comments on lines" setting is activated.
price Decimal (15,4) Unit price.
amount Decimal (15,2) Amount.
amount2 Decimal (15,2) Additional amount. Only used if "Use additional amount" setting is activated.
discount Float Line discount. Only used if "Use line based discount" setting is activated.
sum Decimal (15,2) Line sum without VAT.
vat Decimal (5,2) Line tax percent. Only used if "Use line based tax rates" setting is activated.
vat_code_id Integer Line tax id. Only used if "Use line based tax rates" setting is activated.
unit String Unit name.
finance_object_id Integer ID of the related accounting object. Only used if "Use accounting objects" setting is activated.
finance_account_id Integer ID of the related finance account. Only used if "Use finance accounts" setting is activated.
cost Decimal(15,4) Line cost. Only used if "Use margin" setting is activated.
supplier_id Integer ID of the contact supplying the product on this line. Only used if "Use margin" setting is activated.
project_id Integer ID of the related project.
custom_fields Object Custom fields. Only filled on view requests.

Bills

Name Type Description
no String Document number.
id Integer Document ID
discount Float Overall discount.
discount2 Float or None First additional discount.
discount3 Float or None Second additional discount.
sum Decimal (15,2) Total sum after discounts without VAT. This value is ignored on modify and calculated from rows instead.
vat_sum Decimal (15,2) Total VAT sum. This value is ignored on modify and calculated from rows instead.
vat Decimal(5,3) VAT percent. Only used if line based VAT setting is not activated.
vat_code_id Integer Invoice default vat_code_id
company_id Integer ID of the related client.
person_id Integer ID of the related contact person.
company_address_id Integer If a company has multiple addresses, use this field to set which address is used on the document. If company_address_id is not specified, default address will be used.
project_id Integer ID of the related project. If ID is -1 then each document line can have a different related project.
currency String Used currency. The default currency for site is used on modify if currency is missing or invalid.
owner_id Integer User ID of the user that is responsible for the document.
date Date (YYYY-mm-dd) Document date
deadline Date (YYYY-mm-dd) Document deadline
status String Status of the document (paid, unpaid)
description String Document description
account_id String Related company account. The account from the main request object is used on modify.
lines Array Document lines. Lines will be null for list request and is only filled for view requests.
modified_date Datetime (YYYY-mm-dd HH:ii:ss) The date when document was last modified.
custom_fields Object Custom fields. Only filled on view requests.
is_deleted Boolean Is deleted. Use 'include_deleted = 1' in request object to get deleted objects to response as well.
deleted_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when object was deleted.

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/bills/list
Description:
Get list of bills with API key.
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Description:
Get list of bills with user token. Providing bookmark object to the request will filter the results based on the values provided.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {},
    "bookmark": {
        "bookmark_id": "111"
    }
}
modify
Request URL:
https://#companyname#.scoro.com/api/v2/bills/modify/(#id)
Description:
Modify specific object.
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "description": "New description"
    }
}
view
Request URL:
https://#companyname#.scoro.com/api/v2/bills/view/(#id)
Description:
View specific object.
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
delete
Request URL:
https://#companyname#.scoro.com/api/v2/bills/delete/(#id)
Description:
Delete specific object.
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}

Bill lines

Bill lines do not have direct endpoints via API.
You can retrive info about bill lines by making a view request to get info about an existing bill.
You can add and modify bill lines by making a modify request to add or modify a bill.
Data about bill lines gets passed along in bill objects lines field.


Name Type Description
id Integer Document line ID
product_id Integer ID of the product.
comment String Line comment.
comment2 String Second line comment. Only used if "Use additional comments on lines" setting is activated.
price Decimal (15,4) Unit price.
amount Decimal (15,2) Amount.
amount2 Decimal (15,2) Additional amount. Only used if "Use additional amount" setting is activated.
discount Float Line discount. Only used if "Use line based discount" setting is activated.
sum Decimal (15,2) Line sum without VAT.
vat Decimal (5,2) Line tax percent. Only used if "Use line based tax rates" setting is activated.
vat_code_id Integer Line tax id. Only used if "Use line based tax rates" setting is activated.
unit String Unit name.
finance_object_id Integer ID of the related accounting object. Only used if "Use accounting objects" setting is activated.
finance_account_id Integer ID of the related finance account. Only used if "Use finance accounts" setting is activated.
project_id Integer ID of the related project.
custom_fields Object Custom fields. Only filled on view requests.

Purchase orders

Name Type Description
quote_id Integer Related quote ID.
order_id Integer Related order ID.
real_estate_id Integer Related real estate ID.
delivery_address_id Integer Delivery address id
delivery_date Date (YYYY-mm-dd) Document delivery date
confirmed_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when document was confirmed.
modified_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when document was last modified.
id Integer Document ID
no Integer Document number.
discount Float Overall discount.
discount2 Float or None First additional discount.
discount3 Float or None Second additional discount.
sum Decimal (15,2) Total sum after discounts without VAT. This value is ignored on modify and calculated from rows instead.
vat_sum Decimal (15,2) Total VAT sum. This value is ignored on modify and calculated from rows instead.
vat Decimal(5,3) VAT percent. Only used if line based VAT setting is not activated.
vat_code_id Integer Invoice default vat_code_id
company_id Integer ID of the related client.
person_id Integer ID of the related contact person.
company_address_id Integer If a company has multiple addresses, use this field to set which address is used on the document. If company_address_id is not specified, default address will be used.
interested_party_id Integer ID of the interested party. Only used if site has interested party feature activated.
interested_party_address_id Integer See company_address_id. Only used if site has interested party feature activated.
project_id Integer ID of the related project. If ID is -1 then each document line can have a different related project.
currency String Used currency. The default currency for site is used on modify if currency is missing or invalid.
owner_id Integer User ID of the user that is responsible for the document.
date Date (YYYY-mm-dd) Document date
status String Status of the document ()
description String Document description
account_id String Related company account. The account from the main request object is used on modify.
is_sent Boolean If document is sent. (Cannot unset when document is sent via Scoro)
lines Array Document lines. Lines will be null for list request and is only filled for view requests.
custom_fields Object Custom fields. Only filled on view requests.
is_deleted Boolean Is deleted. Use 'include_deleted = 1' in request object to get deleted objects to response as well.
deleted_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when object was deleted.

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/purchaseOrders/list
Description:
Get list of purchase orders with API key.
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Description:
Get list of purchase orders with user token. Providing bookmark object to the request will filter the results based on the values provided.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {},
    "bookmark": {
        "bookmark_id": "111"
    }
}
modify
Request URL:
https://#companyname#.scoro.com/api/v2/purchaseOrders/modify/(#id)
Description:
Modify specific object.
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "description": "New description"
    }
}
view
Request URL:
https://#companyname#.scoro.com/api/v2/purchaseOrders/view/(#id)
Description:
View specific object.
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
delete
Request URL:
https://#companyname#.scoro.com/api/v2/purchaseOrders/delete/(#id)
Description:
Delete specific object.
Example request body:
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}

Purchase order lines

Purchase order lines do not have direct endpoints via API.
You can retrive info about purchase order lines by making a view request to get info about an existing purchase order.
You can add and modify purchase order lines by making a modify request to add or modify a purchase order.
Data about purchase order lines gets passed along in purchase order objects lines field.


Name Type Description
id Integer Document line ID
product_id Integer ID of the product.
comment String Line comment.
comment2 String Second line comment. Only used if "Use additional comments on lines" setting is activated.
price Decimal (15,4) Unit price.
amount Decimal (15,2) Amount.
amount2 Decimal (15,2) Additional amount. Only used if "Use additional amount" setting is activated.
discount Float Line discount. Only used if "Use line based discount" setting is activated.
sum Decimal (15,2) Line sum without VAT.
vat Decimal (5,2) Line tax percent. Only used if "Use line based tax rates" setting is activated.
vat_code_id Integer Line tax id. Only used if "Use line based tax rates" setting is activated.
unit String Unit name.
finance_object_id Integer ID of the related accounting object. Only used if "Use accounting objects" setting is activated.
finance_account_id Integer ID of the related finance account. Only used if "Use finance accounts" setting is activated.
project_id Integer ID of the related project.
custom_fields Object Custom fields. Only filled on view requests.

Products

Name Type Description
product_id Integer Product ID
code String Product code.
name String Product name in the language specified in request object. This field is used for view and list requests only. Modify requests should put the names to the field "names" (see example).
price Decimal (15,4) Product price. Price list id can be specified in the "price_list" field of the request object. Default price list will be used if "price_list" field is not set.
buying_price Decimal (15,4) Product buying price.
price_list Integer Product price list. Will be used when setting prices for the product. If not set then default price list will be used.
description String Product description. Modify requests support descriptions in multiple languages (see example).
description2 String Product additional description. Modify requests support additional descriptions in multiple languages (same as description field).
tag String Product tag.
url String Product URL.
supplier_id Integer Product supplier ID. Only used if extra field "Supplier" is activated.
productgroup_id Integer Product group ID. Only used if "Use product extras" setting is activated.
is_active Boolean If product is active or deactivated.
is_service Boolean If product is service or not.
default_vat_code_id Integer Default vat code. This applies to both default sales tax and purchases tax if aforementioned
default_sales_tax_id Integer Default sales vat code. This only applies to sales documents.
default_purchases_tax_id Integer Default purchases vat code. This only applies to purchase documents.
accounting_object_id Integer Product default accounting object. Only used if "Use accounting objects" setting is activated.
depots_total_amount Decimal (15,4) Total amount in all depots. Only used if site has "Depot" feature. To modify depot amounts use the depot_amounts field.
depot_amounts Object Amounts for each depot (depot ID as key and amount as value). Only used if site has "Depot" feature. This will be null on list requests.
pictures Array Product pictures. Only used if "Use product extras" setting is activated. This will be null on list requests.
modified_date Datetime (YYYY-mm-dd HH:ii:ss) The date when project was last modified.
custom_fields Object Custom fields. Only filled on view requests.
is_deleted Boolean Is deleted. Use 'include_deleted = 1' in request object to get deleted objects to response as well.
deleted_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when object was deleted.

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/products/list
modify
Request URL:
https://#companyname#.scoro.com/api/v2/products/modify/(#id)
view
Request URL:
https://#companyname#.scoro.com/api/v2/products/view/(#id)
delete
Request URL:
https://#companyname#.scoro.com/api/v2/products/delete/(#id)
Request URL
https://#companyname#.scoro.com/api/products
Sample modify request using price list id 1
https://#companyname#.scoro.com/api/products/modify
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "product_id": "151",
        "code": "987654321",
        "price": "321.54",
        "price_list": "1",
        "names": {
            "est": "Toode1",
            "eng": "Product1"
        },
        "description": {
            "est": "Kirjeldus1",
            "eng": "Description1"
        }
    }
}
Sample view request using price list id 2
https://#companyname#.scoro.com/api/products/modify
{
    "apiKey": "API_hash",
    "lang": "est",
    "company_account_id": "tutorial",
    "request": {
        "price_list": 2
    }
}
Sample modify request with depot amounts
https://#companyname#.scoro.com/api/products/modify
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "price": "123.45",
        "names": {
            "est": "Toode",
            "eng": "Product"
        },
        "depot_amounts": {
            "1": "5.00",
            "2": "2.00"
        }
    }
}

Product groups

Name Type Description
id Integer Product group ID
parent_group_id Integer Parent product group ID. 0 if this group has no parent group.
name String Group name in the language specified in request object.
comments String Productgroup description.
pcs_per_package Integer Products in this productgroup.
account_name String Account for external connections.

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/productGroups/list
modify
Request URL:
https://#companyname#.scoro.com/api/v2/productGroups/modify/(#id)
view
Request URL:
https://#companyname#.scoro.com/api/v2/productGroups/view/(#id)
Request URL
https://#companyname#.scoro.com/api/productGroups

Price lists

Name Type Description
id Integer Price list ID
name String Price list name.
currency String Price list currency.

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/priceLists/list
view
Request URL:
https://#companyname#.scoro.com/api/v2/priceLists/view/(#id)
Request URL
https://#companyname#.scoro.com/api/priceLists

Depot

Name Type Description
depot_id Integer Depot ID.
depot_name String Depot name.
comments String Depot comments/description.

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/depot/list
view
Request URL:
https://#companyname#.scoro.com/api/v2/depot/view/(#id)
Request URL
https://#companyname#.scoro.com/api/depot

Projects

Name Type Description
project_id Integer Project ID
no String Project number.
project_name String Project name.
description String Project description.
company_id Integer Related company ID.
company_name String Related company name. Only available for user based API
is_personal Boolean If project is personal or business related.
is_private Boolean If project is public or only for project members
color String Project color identifier. Format is in hex "#ffffff"
status String Project status. Possible values: pending, inprogress, cancelled, completed, future, additional1, additional2, additional3, additional4
manager_id Integer Project manager ID.
date Date (YYYY-mm-dd) Project start date.
deadline Date (YYYY-mm-dd) Project deadline.
duration Time (HH:ii:ss) Project estimated duration.
account_id String Related account. Empty if project is shared between accounts.
budget_type String Project budget type. Possible values: quote, simple, advanced. Used only for list and view requests.
modified_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when project was last modified.
deleted_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when project was deleted.
tags Array Array of project tags. Not used on list requests.
permissions Array Object user permissions. Used only for user based API
project_users Array Project related users. It is used only for modify and view requests.
stripDescription Boolean Deprecated Can use this argument on view requests. Strips HTML from project description field. Default value for this is true.
custom_fields Object Custom fields. Only filled on view requests.
is_deleted Boolean Is deleted. Use 'include_deleted = 1' in request object to get deleted objects to response as well.

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/projects/list
Description:
Get list of objects with user token. Providing bookmark object to the request will filter the results based on the values provided.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {},
    "bookmark": {
        "bookmark_id": "111"
    }
}
Description:
Get basic data for the list by adding "basic_data" to the request object. Bookmark object is optional.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "basic_data": "1",
    "request": {},
    "bookmark": {
        "bookmark_id": "111"
    }
}
Description:
Get list of objects with API key
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "API_hash",
    "request": {}
}
modify
Request URL:
https://#companyname#.scoro.com/api/v2/projects/modify/(#id)
Description:
Modify specific object or create a new one with user token. User needs to have permission to modify existing object. Adding "return_data" parameter will control if object data will be returned with successful request.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {
        "event_name": "New Name"
    }
}
Description:
Modify specific object or create a new one with API key
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "API_hash",
    "request": {
        "event_name": "New Name"
    }
}
view
Request URL:
https://#companyname#.scoro.com/api/v2/projects/view/(#id)
Description:
Get specific object with user token. User needs to have permission to view the object.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {}
}
Description:
Get specific object with API key
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "API_hash",
    "request": {}
}
delete
Request URL:
https://#companyname#.scoro.com/api/v2/projects/delete/(#id)
Description:
Delete specific object with user token. User needs to have permissions to delete the object
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {}
}
Description:
Delete specific contact with API key
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "API_hash",
    "request": {}
}
filters Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/projects/filters
Description:
Getting filters for module. Empty request object returns all filters for the module. Supplying list of bookmark fields to the request body and using per_page and page parameters will give remaining of the filter records.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": 200,
    "messages": null,
    "data": [
        {
            "values": [
                {
                    "item_id": 1,
                    "item_name": "John Smith"
                }
            ],
            "selected_value": {
                "item_id": [
                    1
                ],
                "item_name": "My projects"
            },
            "settings": {
                "filter_id": "bookmark_users",
                "total_count": 1,
                "filter_name": "Users",
                "type": "type_checkbox"
            }
        }
    ]
}
Description:
Getting specific filter values
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "page": "1",
    "per_page": "50",
    "request": {
        "fields": [
            "bookmark_users",
            "bookmark_projects"
        ]
    }
}
getRelatedObjects Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/projects/getRelatedObjects/(#id)
Description:
Get all related objects of another object. "modules" parameter in request object allows to filter results by module. "modules" parameter accepts an array of module names. Currently supported modules are users, contacts, companies, tasks, calendar, invoices, prepayments, bills, expenses, quotes, orders, files, budgets. User based API also supports planned_activities and past_activities.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": {
        "companies": {
            "items": [],
            "totals": []
        },
        "contacts": {
            "items": [],
            "totals": []
        },
        "tasks": {
            "items": [],
            "totals": []
        },
        "calendar": {
            "items": [],
            "totals": []
        },
        "invoices": {
            "items": [],
            "totals": []
        },
        "prepayments": {
            "items": [],
            "totals": []
        },
        "bills": {
            "items": [],
            "totals": []
        },
        "quotes": {
            "items": [],
            "totals": []
        },
        "orders": {
            "items": [],
            "totals": []
        },
        "files": {
            "items": [],
            "totals": []
        },
        "budgets": {
            "items": [],
            "totals": []
        }
    }
}
Request URL
https://#companyname#.scoro.com/api/projects

Activities

Name Type Description
activity_id Integer Activity id
name String Activity type's name in the language specified in request object.
parent_id Integer Activity type's group id
parent_name String Activity type's group name in the language specified in request object.
is_group Boolean Is activity group
is_active Boolean If Activity is active or deactivated.
modified_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when activity was last modified.

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/activities/list
Description:
Getting list of activities.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": 200,
    "messages": null,
    "data": [
        {
            "activity_id": 1,
            "name": "API",
            "is_active": "1",
            "parent_id": 105,
            "parent_name": "API Group",
            "is_group": "0",
            "modified_date": "1970-01-01T02:00:00+02:00"
        }
    ]
}

Addresses

Available actions are

list Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/addresses/list
Description:
Getting list of addresses that are present in used site. "Types" parameter is required in request object. We are supporting following types: country, county, municipality, city, street, zipcode
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "types": [
            "country",
            "city",
            "street",
            "county",
            "municipality",
            "zipcode"
        ]
    }
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": {
        "country": [
            {
                "country_code": "afg",
                "country_name": "Afghanistan"
            }
        ],
        "city": [
            {
                "city": ""
            }
        ],
        "street": [
            {
                "street": ""
            }
        ],
        "county": [
            {
                "county": ""
            }
        ],
        "municipality": [
            {
                "municipality": ""
            }
        ],
        "zipcode": [
            {
                "zipcode": ""
            }
        ]
    }
}

Bookmarks

Name Type Description
bookmark_id Integer Bookmark ID
module String Module name where bookmark belongs to
title String Bookmark name

Available actions are

list Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/bookmarks/list
Description:
Getting list of bookmarks for the module.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "module": "tasks"
    }
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": [
        {
            "bookmark_id": 2346,
            "title": "Test Bookmark"
        }
    ]
}

Categories

Name Type Description
cat_id Integer Category ID
cat_name String Category name
symbol String Category symbol
description String Category description
modified_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when resource was last modified.

Available actions are

list Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/categories/list
Description:
Getting list of categories.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": [
        {
            "cat_id": 1,
            "cat_name": "A - Cat",
            "symbol": "A",
            "description": ""
        }
    ]
}

Search

Name Type Description
module String System module name.
module_title String Module title in requested language.
search_data Array [id,name] associated with module from current request.
results_left Integer Amount of remaining undisplayed results.
custom_fields Object Custom fields. Only filled on view requests.

Available actions are

list Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/search/list
Description:
Sample list request for search_phrase "example"
Example request body:
{
    "user_token": "USER_API_token",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "search_phrase": "example"
    }
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": [
        {
            "modules": [
                "quotes"
            ],
            "module_title": "Quotes",
            "search_data": [
                {
                    "name": "500",
                    "id": "30"
                }
            ]
        },
        {
            "module": "companies",
            "module_title": "Companies",
            "search_data": [
                {
                    "name": "example",
                    "id": "1"
                }
            ]
        }
    ]
}
Description:
Sample full search list request for search_phrase "example"
Example request body:
{
    "user_token": "USER_API_token",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "search_phrase": "example",
        "full_result": "true"
    }
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": [
        {
            "modules": [
                "invoices"
            ],
            "module_title": "Invoices",
            "search_data": [
                {
                    "name": "12",
                    "id": "12"
                },
                {
                    "name": "123",
                    "id": "123"
                }
            ],
            "results_left": 0
        },
        {
            "module": "companies",
            "module_title": "Companies",
            "search_data": [
                {
                    "name": "example1",
                    "id": "71"
                },
                {
                    "name": "example2",
                    "id": "23"
                }
            ],
            "results_left": 42
        }
    ]
}
Description:
Sample module based list request for search_phrase "example" and module "companies".
Example request body:
{
    "user_token": "USER_API_token",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "search_phrase": "example",
        "full_result": "true",
        "modules": [
            "companies"
        ]
    }
}

Files

Name Type Description
file_id Integer File ID
hash String File hash, used for accessing file from Scoro via url
file_name String Filename
file_location String File path
file_size String File size in bytes
uploaded_by Integer User ID
category_id Integer File category ID
repository String possible values are "local" - stored in Scoro, "ftp", "dropbox"
file_type String default is "other"
is_private Boolean the file is uploaded as private and not visible by all
is_public Boolean the file is uploaded to a public folder, enabling direct access
rel_type String Related object type. Should be filled for only addRelation/removeRelation request
rel_id Integer Related object id. Should be filled for only addRelation/removeRelation request
relations Array Related object ids by type. Is filled only for view request.
permissions Array Object user permissions. Used only for user based API list request
is_deleted Boolean Is deleted. Use 'include_deleted = 1' in request object to get deleted objects to response as well.
deleted_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when object was deleted.

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/files/list
modify
Request URL:
https://#companyname#.scoro.com/api/v2/files/modify/(#id)
Description:
File uploading format is described in the following File Upload section.
view
Request URL:
https://#companyname#.scoro.com/api/v2/files/view/(#id)
delete
Request URL:
https://#companyname#.scoro.com/api/v2/files/delete/(#id)
download
Request URL:
https://#companyname#.scoro.com/api/v2/files/download/(#id)
Description:
Downloading a file. Returns a binary content of the file.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {}
}
addRelation
Request URL:
https://#companyname#.scoro.com/api/v2/files/addRelation/(#id)
Description:
Adding a relation for an existing file.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "rel_type": "tasks",
        "rel_id": "123"
    }
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": {
        "success": {
            "263bb0cff70e3b83a46b11b60257a6d5": "File relation added"
        }
    }
}
removeRelation
Request URL:
https://#companyname#.scoro.com/api/v2/files/removeRelation/(#id)
Description:
Removing file relation from an object.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "rel_type": "tasks",
        "rel_id": "123"
    }
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": {
        "success": {
            "263bb0cff70e3b83a46b11b60257a6d5": "File relation removed"
        }
    }
}

File Upload

Name Type Description
size Integer total size of file being uploaded (original file size, not base64 string)
name String file name
chunk_no Integer number of chunk currently being uploaded
chunks_total Integer total number of chunks
chunk_data String base64 encoded String that cannot be bigger than 5000000 bytes
uploaded_by Integer User ID
Uploading
https://#companyname#.scoro.com/api/files/modify Request
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "chunks_total": 3,
        "name": "file.txt",
        "size": 8782513,
        "repository": "local",
        "chunk_no": 1,
        "chunk_data": "base64EncodedString"
    }
}
Response
{
    "status": "OK",
    "statusCode": "200",
    "messages": {
        "success": {
            "db85db7d88d02b9887cf1c2e7d721640": "File chunk received(1 of 3)"
        }
    }
}
Response when the last chunk has been uploaded
https://#companyname#.scoro.com/api/files/modify Request
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "chunks_total": 3,
        "name": "file.txt",
        "size": 8782513,
        "repository": "local",
        "chunk_no": 3,
        "chunk_data": "base64EncodedString"
    }
}
Response
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": {
        "file_name": "file.txt",
        "file_id": 87,
        "file_type": "other",
        "file_hash": "5qb8tfh4u80004kwks0cc4gw0cgwwc84"
    }
}

Notifications

Name Type Description
id Integer Notification ID.
structure_id Integer Main module item ID.
structure_id2 Integer Related module item ID.
remind_type String Remind via: scoro or email.
module String Notification module name. Example values are tasks, tasks | comments etc
user_id Integer User ID where notification was sent to.
notifier_id Integer User ID where notification was sent from.
date_added Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) Notification added time.
status String Notification status. Possible values are unread, read.
date_read Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) Notification read date.
action String Notification action type. Possible values are add, edit, delete.
notification_action_text String Notification action text. For example, "added comment to"
notification_title_text String Notification title text.
checked Boolean Used only for modify request for setting the time when user last checked notifications. Possible values: true

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/notifications/list
Description:
Get a list of notifications.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {}
}
modify
Request URL:
https://#companyname#.scoro.com/api/v2/notifications/modify/(#id)
Description:
Set last notifications checked date.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {
        "checked": "true"
    }
}
Description:
Set notification as read or unread.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {
        "status": "read"
    }
}
Description:
Add notification to a comment. In this example: structure_id is task id and structure_id2 is comment id
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {
        "structure_id": 10,
        "structure_id2": 20,
        "remind_type": "scoro",
        "module": "tasks|comments",
        "user_id": 2,
        "status": "unread",
        "action": "edit"
    }
}
Description:
Add notification and send as email. User has to have an email set.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {
        "structure_id": 10,
        "remind_type": "email",
        "module": "tasks",
        "user_id": 2,
        "status": "unread",
        "action": "add"
    }
}

Statuses

Name Type Description
status_id Integer Status ID
status_name String Status name
color String Status color identifier
module String Status module
is_default boolean Shows if status is selected by default when creating new objects.
modified_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when resource was last modified.

Available actions are

list Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/statuses/list
Description:
Getting list of statuses for the modules. Empty request parameter will return all statuses for modules.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "filter": {
        "module": [
            "tasks"
        ]
    }
}
Example response body:
{
    "status": "OK",
    "statusCode": 200,
    "messages": null,
    "data": [
        {
            "status_id": "task_status0",
            "status_name": "TEst",
            "color": "#a47ae2"
        }
    ]
}

Tags

Name Type Description
tag_id Integer Tag ID
tag_name String Tag name
parent_id Integer Tag parent ID
parent_name String Tag parent name

Available actions are

list Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/tags/list
Description:
Getting list of tags for the module. Request expects 'type' parameter.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "type": "contacts"
    }
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": [
        {
            "tag_id": 1,
            "tag_name": "Test Tag",
            "parent_id": 2,
            "parent_name": "Test Parent"
        }
    ]
}

Webhooks

Name Type Description
module String Module name (calendar, tasks, projects, companies, persons, invoices, prepayments, bills, orders, quotes).
action String Action type (any, create, modify, delete).
url String URL where the webhook should POST the affected entity.

Available actions are

subscribe Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/webhooks/subscribe
Description:
Subscribing to webhook for notifications when a task is created.
Example request body:
{
    "user_token": "USER_API_token",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "module": "tasks",
        "action": "create",
        "url": "https:\/\/example.com\/test"
    }
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": {
        "url": "https:\/\/example.com\/test"
    }
}
unsubscribe Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/webhooks/unsubscribe
Description:
Unsubscribe from webhook notifications to specified URL when a task is created.
Example request body:
{
    "user_token": "USER_API_token",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "module": "tasks",
        "action": "create",
        "url": "https:\/\/example.com\/test"
    }
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null
}
Request URL
https://#companyname#.scoro.com/api/webhooks

Users

Name Type Description
id Integer User ID.
username String Username.
firstname String First name.
lastname String Last name.
initials String Initials.
email String Email address.
is_active Boolean If user is active or deactivated.
birthday Date (YYYY-mm-dd) Users birthday.
category String User category. Possible values: user, admin.
position String User job/position.
user_picture String User profile image URL. Available only for "list" and "view" actions
role_id Integer User role ID.
user_groups_ids Array User groups ID-s.
country_id String User country ID.
gsm String User phone number.
timezone String User timezone
modified_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when user was last modified.

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/users/list
Description:
Getting users list with user token. Returns array of user objects.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": [
        {
            "id": 1,
            "username": "test",
            "firstname": "test",
            "lastname": "test",
            "initials": "T1",
            "email": "test[at]scoro.com",
            "is_active": 1,
            "birthday": "1970-01-01",
            "position": "Manager",
            "category": "admin"
        },
        {
            "id": 2,
            "username": "test2",
            "firstname": "test2",
            "lastname": "test2",
            "initials": "T2",
            "email": "test2[at]scoro.com",
            "is_active": 1,
            "birthday": "1980-01-01",
            "position": "Manager 2",
            "category": "admin"
        }
    ]
}
Description:
Getting users object by ID with API key. Returns array of user objects.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "API_hash",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": [
        {
            "id": 1,
            "username": "test",
            "firstname": "test",
            "lastname": "test",
            "initials": "T1",
            "email": "test[at]scoro.com",
            "is_active": 1,
            "birthday": "1970-01-01",
            "position": "Manager",
            "category": "admin"
        },
        {
            "id": 2,
            "username": "test2",
            "firstname": "test2",
            "lastname": "test2",
            "initials": "T2",
            "email": "test2[at]scoro.com",
            "is_active": 1,
            "birthday": "1980-01-01",
            "position": "Manager 2",
            "category": "admin"
        }
    ]
}
view
Request URL:
https://#companyname#.scoro.com/api/v2/users/view/(#id)
Description:
Getting users object by ID with user token
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": {
        "id": 1,
        "username": "test",
        "firstname": "test",
        "lastname": "test",
        "initials": "TT",
        "email": "test[at]scoro.com",
        "is_active": 1,
        "birthday": "1970-01-01",
        "category": "admin",
        "position": "Manager"
    }
}
Description:
Getting users object by ID with API key
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "API_hash",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": {
        "id": 1,
        "username": "test",
        "firstname": "test",
        "lastname": "test",
        "initials": "TT",
        "email": "test[at]scoro.com",
        "is_active": 1,
        "birthday": "1970-01-01",
        "category": "admin",
        "position": "Manager"
    }
}
settings Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/users/settings/(#id)
Description:
Getting currently logged in users settings with its company accounts
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null,
    "data": {
        "user_id": 1,
        "master_company_account": "tutorial",
        "first_day_of_week": 1,
        "timezone": "Europe\/Helsinki",
        "locale_clock": "12",
        "locale_date": "%m\/%d\/%Y",
        "locale_number": {
            "thousandSeparator": "",
            "decimalSeparator": "."
        },
        "company_accounts": [
            {
                "account_id": "tutorial"
            }
        ]
    }
}
Request URL
https://#companyname#.scoro.com/api/users

User groups

Name Type Description
group_id Integer Group ID.
group_name String Group name.
comment String Group comment.
is_hidden Boolean If group is hidden.

Available actions are

list Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/userGroups/list
Description:
Getting user groups list. Returns array of user groups objects.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "API_hash",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": 200,
    "messages": null,
    "data": [
        {
            "group_id": 1,
            "group_name": "Main team",
            "comment": "",
            "is_hidden": 0
        }
    ]
}
modify Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/userGroups/modify/(#id)
Description:
Adding new and modifying current user groups
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "API_hash",
    "request": {
        "group_name": "Main team"
    }
}
Example response body:
{
    "status": "OK",
    "statusCode": 200,
    "messages": null,
    "data": {
        "group_id": 1,
        "group_name": "Main team",
        "comment": "",
        "is_hidden": 0
    }
}
view Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/userGroups/view/(#id)
Description:
Getting user groups object by ID
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "API_hash",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": 200,
    "messages": null,
    "data": {
        "group_id": 1,
        "group_name": "Main team",
        "comment": "",
        "is_hidden": 0
    }
}
delete Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/userGroups/delete/(#id)
Description:
Deleting user group.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "API_hash",
    "request": {}
}
Example response body:
{
    "status": "OK",
    "statusCode": "200",
    "messages": null
}

VAT Codes

Name Type Description
vat_code_id Integer Tax rate ID
vat_code String Tax rate code
percent Decimal (5,3) Tax rate percent
vat_name String Tax rate name
is_sales Boolean Is sales type tax rate (can be used in sales type documents)
is_purchases Boolean Is purchase type rax rate (can be used in purchase type documents)
is_active Boolean If tax rate is active or inactive
is_not_applicable Boolean If tax rate is applicable or not

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/vatCodes/list
modify
Request URL:
https://#companyname#.scoro.com/api/v2/vatCodes/modify/(#id)
Description:
Modify specific object or create a new one with user token.
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "user_token": "e238865f83e2b04c09c5c8b39696d37c",
    "request": {
        "event_name": "New Name"
    }
}
Description:
Modify specific object or create a new one with API key
Example request body:
{
    "lang": "eng",
    "company_account_id": "tutorial",
    "apiKey": "API_hash",
    "request": {
        "event_name": "New Name"
    }
}
view
Request URL:
https://#companyname#.scoro.com/api/v2/vatCodes/view/(#id)
delete
Request URL:
https://#companyname#.scoro.com/api/v2/vatCodes/delete/(#id)
Request URL
https://#companyname#.scoro.com/api/v2/vatCodes

Accounting objects

Name Type Description
object_id Integer Accounting object ID
object_symbol String symbol
name String name
parent_group_name String parent group name

Available actions are

list
Request URL:
https://#companyname#.scoro.com/api/v2/financeObjects/list
view
Request URL:
https://#companyname#.scoro.com/api/v2/financeObjects/view/(#id)
Request URL
https://#companyname#.scoro.com/api/financeObjects

Properties

Name Type Description
id Integer Property id
is_active Boolean If property is active or deactivated.
cadastral_numbers String Cadastral number of the property.
house_number String House number of the property.
street String Street name of the property.
zipcode String Zipcode of the property.
city String City of the property.
municipality String Municipality of the property.
county String Country of the property.
country String Country of the property.
description String Property description
manager_id Integer Scoro user ID for the property manager.
owners Object Property owners, object format: {["contact_id":123, "start_date":"2017-01-01", "end_date":"2020-01-01"]}.
contractors Object Property contractors, object format: {["contact_id":123, "start_date":"2017-01-01", "end_date":"2020-01-01"]}.
representatives Object Property representatives, object format: {["contact_id":123, "start_date":"2017-01-01", "end_date":"2020-01-01"]}.
tags Array Array of property tags. Not used on list requests.
modified_date Datetime (YYYY-mm-dd HH:ii:ss) The date when property was last modified.
custom_fields Object Custom fields. Only filled on view requests.

Available actions are

list Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/properties/list
modify Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/properties/modify/(#id)
view Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/properties/view/(#id)
delete Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/properties/delete/(#id)

Meters

Name Type Description
id Integer Meter id
sys_number String Systemic number of the meter.
type String Meter type.
accounting_type String Accounting type.
amount Decimal(10, 2) Amount
amount_period_from Date(YYYY-mm-dd) Amount period from
amount_period_to Date(YYYY-mm-dd) Amount period to
status String Meter status
reading Integer Meter latest reading
coefficient Float Meter coefficiency
diameter String Diameter
contact_id Integer Meter contact ID
related_property Integer Meter related property ID
parent_meter Integer Meter's parent ID
period_type String Meter period type
price_list Integer Meter price list ID
description String Meter description
send_invoice_via String Send invoice via
calibration_period Integer Calibration period in months
date_of_calibration Date(YYYY-mm-dd) Meter calibration date from
date_of_calibration2 Date(YYYY-mm-dd) Meter calibration date to
inactive_period_from Date(Y-m-d) Inactive from
inactive_period_to Date(YYYY-mm-dd) Inactive to
mark String Mark
send_reading_card Boolean Send reading card
tags Array Array of meter tags. Not used on list requests.
modified_date Datetime (YYYY-mm-dd HH:ii:ss) The date when meter was last modified.
custom_fields Object Custom fields. Only filled on view requests.
is_deleted Boolean Is deleted. Use 'include_deleted = 1' in request object to get deleted objects to response as well.
deleted_date Datetime (DATE_ISO8601 - Y-m-d\TH:i:sP) The date when object was deleted.

Available actions are

list Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/meters/list
modify Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/meters/modify/(#id)
view Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/meters/view/(#id)
delete Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/meters/delete/(#id)

Readings

Name Type Description
id Integer Reading ID
meter_id Integer Meter ID
reading Integer Reading amount.
reading_date Date (YYYY-mm-dd) Reading date.
accounting_period_from Date (YYYY-mm-dd) Accounting period of the reading, from date.
accounting_period_to Date (YYYY-mm-dd) Accounting period of the reading, to date.
created_by Integer Created user ID.
type String Reading type. Possible values: beginning, final, control.
status String Reading status. Possible values: accepted, declined, paid.
sewer_reading Integer Sewer reading amount. Only necessary when meter type is "Water and sewer".
invoice_id Integer ID of the invoice that has been generated from the reading.
source String Source of the reading.

Available actions are

list Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/readings/list
modify Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/readings/modify/(#id)
view Version: v2
Request URL:
https://#companyname#.scoro.com/api/v2/readings/view/(#id)
Request URL
https://#companyname#.scoro.com/api/v2/properties/readings
Sample modify request using price list id 1
{
    "apiKey": "API_hash",
    "lang": "eng",
    "company_account_id": "tutorial",
    "request": {
        "meter_id": "151",
        "reading": "100",
        "reading_date": "2015-01-01",
        "created_by": 1,
        "type": "final",
        "status": "accepted",
        "sewer_reading": "90"
    }
}