Data Dictionary
1. User
Model name:
TungaUser
Model attributes
Attribute | Type | Required | Description |
---|---|---|---|
id | int |
auto |
primary key |
username | string |
true |
unique alphamumeric identifier |
string |
true |
contact email address | |
first_name | string |
true |
user’s given name |
last_name | string |
true |
user’s surname |
date_joined | datetime |
auto |
date and time at which the user was joined Tunga |
account_type | int |
no | type of user
|
image | string |
no | relative local path of user’s avatar |
payoneer_status | string |
no | current status of user’s Payoneer application one of default: |
API only attributes
Attribute | Type | Required | Description |
---|---|---|---|
display_name | string |
no | user’s full name |
avatar_url | string |
no | absolute url of user’s avatar |
display_type | string |
no | display friendly representation of the user type one of |
is_developer | boolean |
no | indicates is user is a developer |
is_project_manager | boolean |
no | indicates is user is a project manager |
is_project_owner | boolean |
no | indicates is user is a project owner/ client |
is_admin | boolean |
no | indicates is user is an admin |
profile | Profile |
no | user’s profile object |
Relate API docs
- Inviting users [http://sandbox.tunga.io/api/docs/#/invite]
- Get current logged in user [http://sandbox.tunga.io/api/docs/#/https://tunga.io/api/docs/#!/auth/auth_verify_list]
- Manage currently logged in user [http://sandbox.tunga.io/api/docs/#/me]
- Manage users [http://sandbox.tunga.io/api/docs/#/user]
2. Profile
Model name:
UserProfile
Model attributes
Attribute | Type | Required | Description |
---|---|---|---|
id | int |
auto |
primary key |
user | User |
auto |
owner of the profile |
country | string |
no | user’s country of residence must be an ISO 3166-1 alpha-2 country code e.g |
city | string |
no | user’s city of residence |
street | string |
no | user’s street of residence |
plot_number | string |
no | user’s plot number of residence |
postal_code | string |
no | user’s postal code of residence |
postal_address | string |
no | user’s postal address of residence |
phone_number | string |
no | user’s phone number |
skills | list<Skill> |
no | a list of the user’s skills saved and parsed as a string of comma separated values e.g
|
vat_number | string |
no | user’s vat number |
id_document | string |
no | absolute url of user’s only applies to clients |
skype_id | string |
no | user’s skype id |
API only attributes
Attribute | Type | Required | Description |
---|---|---|---|
country_name | string |
no | full country name e.g |
city_name | string |
no | string reprensentation of city object |
location | string |
no |
|
skills | list<Skill> |
no | list of Skill objects |
skills_details | hash<list<Skill» |
no | hash of Skill object lists where each hash key is a skill category
|
Relate API docs
- Manage currently logged in user [http://sandbox.tunga.io/api/docs/#/me]
3. Company
Model name:
Company
Model attributes
Attribute | Type | Required | Description |
---|---|---|---|
id | int |
auto |
primary key |
user | User |
auto |
user who created the company |
name | string |
no | registered name of the company |
country | string |
no | country in which company is located must be an ISO 3166-1 alpha-2 country code e.g |
city | string |
no | city in which company is located |
street | string |
no | company street address |
plot_number | string |
no | company plot number |
postal_code | string |
no | company postal code |
postal_address | string |
no | company postal address |
tel_number | string |
no | company telephone number |
vat_number | string |
no | company vat number |
reg_no | string |
no | company registration number |
website | string |
no | company website |
bio | string |
no | a brief decription of the company |
skills | list<Skill> |
no | a list of the skills needed by the company saved and parsed as a string of comma separated values e.g
|
API only attributes
Attribute | Type | Required | Description |
---|---|---|---|
country_name | string |
no | full country name e.g |
city_name | string |
no | string reprensentation of city object |
location | string |
no |
|
skills | list<Skill> |
no | list of Skill objects |
skills_details | hash<list<Skill» |
no | hash of Skill object lists where each hash key is a skill category
|
Relate API docs
- Manage currently logged in companies [http://sandbox.tunga.io/api/docs/#/companies]
4. Skill
Model name:
Skill
Model attributes
Attribute | Type | Required | Description |
---|---|---|---|
id | int |
auto |
primary key |
name | string |
true |
name of the skill or product e.g |
5. Education
Model name:
Education
Model attributes
Attribute | Type | Required | Description |
---|---|---|---|
id | int |
auto |
primary key |
user | User |
auto |
owner of the education info |
institution | string |
true |
name of the institution/ school |
award | string |
true |
name of the award after e.g |
start_month | number |
true |
integer for start month for duration of education award values |
start_year | number |
true |
start year for duration of education award |
end_month | number |
no | integer for end month for duration of education award values |
end_year | number |
no | end year for duration of education award |
details | string |
true |
detailed description of the education award |
created_at | datetime |
auto |
timestamp of when the object was created |
Relate API docs
- Manage education [http://sandbox.tunga.io/api/docs/#/education]
6. Experience
Model name:
Work
Model attributes
Attribute | Type | Required | Description |
---|---|---|---|
id | int |
auto |
primary key |
user | User |
auto |
owner of the education info |
company | string |
true |
name of the company |
position | string |
true |
position/title of the company after e.g |
start_month | number |
true |
integer for start month for duration of education award values |
start_year | number |
true |
start year for duration of education award |
end_month | number |
no | integer for end month for duration of education award values |
end_year | number |
no | end year for duration of education award |
details | string |
true |
detailed description of the education award |
created_at | datetime |
auto |
timestamp of when the object was created |
Relate API docs
- Manage experience [http://sandbox.tunga.io/api/docs/#/work]
7. Project
Model name:
Project
Model attributes
Attribute | Type | Required | Description |
---|---|---|---|
id | int |
auto |
primary key |
user | User |
auto |
user that created the project (owner by default) |
title | string |
true |
brief title of the project |
description | string |
true |
more detailed decription of the project |
owner | User |
no | the owner of the project (overrides user when set) |
pm | User |
no | project manager for the project |
skills | list<Skill> |
true |
a list of skills needed to complete the project saved and parsed as a string of comma separated values e.g
|
budget | string |
no | budget for the project |
currency | string |
auto |
ISO 4217 currency code for the currency in which the payment will be made default: |
type | string |
true |
type of project one of default: |
expected_duration | string |
no | type of project one of default: |
stage | string |
no | stage of the project one of default: |
start_date | date |
no | start date for the project |
deadline | date |
no | desired deadline for the project |
client_survey_enabled | boolean |
auto |
determines if surveys are enabled for this clients default: |
pm_updates_enabled | boolean |
auto |
determines if updates are enabled for this pm default: |
created_at | datetime |
auto |
timestamp of when the object was created |
archived | boolean |
no | indicates whether the object is archived |
archived_at | datetime |
auto |
timestamp of when the object was archived |
Relate API docs
- Manage projects [http://sandbox.tunga.io/api/docs/#/project]
8. Document
Model name:
Document
Model attributes
Attribute | Type | Required | Description |
---|---|---|---|
id | int |
auto |
primary key |
project | Project |
true |
Project object the document is related to |
url | string |
no | absolute url for the document, used for shared documents links e.g Google Drive and Dropbox |
file | object |
no | Uploaded file object used for directly uploaded documents |
type | string |
true |
type of document one of
|
title | string |
no | title of the document |
description | string |
no | description of the document |
created_by | User |
auto |
user that created the document |
created_at | datetime |
auto |
timestamp of when the object was created |
API only attributes
Attribute | Type | Required | Description |
---|---|---|---|
download_url | string |
no | absolute url for the document |
Relate API docs
- Manage documents [http://sandbox.tunga.io/api/docs/#/document]
9. Participation
Model name:
Participation
Model attributes
Attribute | Type | Required | Description |
---|---|---|---|
id | int |
auto |
primary key |
project | Project |
true |
Project the user is participating to |
user | User |
true |
participating user |
status | string |
no | status of the user’s participation one of default: |
updates_enabled | boolean |
auto |
determines if updates are enabled for this participant default: |
created_by | User |
auto |
user that created the participation object |
created_at | datetime |
auto |
timestamp of when the object was created |
Relate API docs
- Manage participation [http://sandbox.tunga.io/api/docs/#/participation]
10. InterestPoll
Model name:
InterestPoll
Model attributes
Attribute | Type | Required | Description |
---|---|---|---|
id | int |
auto |
primary key |
project | Project |
true |
Project the user is being polled about |
user | User |
true |
polled user |
status | string |
no | status of the user’s poll one of default: |
created_by | User |
auto |
user that created the participation object |
created_at | datetime |
auto |
timestamp of when the object was created |
Relate API docs
- Manage Interest Pill [http://sandbox.tunga.io/api/docs/#/interest-poll]
11. Invoice
Model name:
Invoice
Model attributes
Attribute | Type | Required | Description |
---|---|---|---|
id | int |
auto |
primary key |
project | Project |
true |
Project for the invoice |
user | User |
true |
user invoicing (for |
type | string |
true |
type of invoice one of name denotes entity being invoiced.
|
title | string |
no | title of the invoice default: title of the project |
amout | number |
true |
amount that will be paid |
currency | string |
auto |
ISO 4217 currency code for the currency in which the payment will be made default: |
tax_rate | number |
true |
tax rate as a percentage e.g |
processing_fee | number |
true |
processing fee that will be charged for the transaction default: |
created_by | User |
auto |
user that created the invoice |
created_at | datetime |
auto |
timestamp of when the object was created |
number | string |
auto |
unique invoice number for this invoice |
batch_ref | string (uuid4) |
no | unique reference for invoices created by a batch request e.g one payout to multiple devs |
paid | boolean |
no | indicates whether invoice has been paid |
paid_at | datetime |
no | timestamp of when payment receipt was confirmed |
status | string |
auto |
one of default: setting this field to |
API only attributes
Attribute | Type | Required | Description |
---|---|---|---|
tax_amount | number |
auto |
tax amount calculated from the amount and tax_rate
|
Relate API docs
- Manage invoices [http://sandbox.tunga.io/api/docs/#/invoices]
12. Payment
Model name:
Payment
Model attributes
Attribute | Type | Required | Description |
---|---|---|---|
id | int |
auto |
primary key |
invoice | Invoice |
true |
Invoice for which the payment will be made |
amout | string |
true |
amount that will be paid |
currency | string |
auto |
ISO 4217 currency code for the currency in which the payment will be made default: |
payment_method | string |
true |
one of all new payments are made with either |
paid_at | datetime |
no | timestamp of when payment receipt was confirmed |
created_by | User |
auto |
user that created the payment |
created_at | datetime |
auto |
timestamp of when the object was created |
API only attributes
Attribute | Type | Required | Description |
---|---|---|---|
type | string |
no | type of payment one of
|
Relate API docs
- Manage payments [http://sandbox.tunga.io/api/docs/#/payments]
13. ProgressEvent
Model name:
ProgressEvent
Model attributes
Attribute | Type | Required | Description |
---|---|---|---|
id | int |
auto |
primary key |
project | Project |
true |
Project object associated with the event |
type | string |
true |
event type
|
title | string |
true |
title of the event |
description | string |
true |
description of the vent |
due_at | date |
true |
date when a report for the event is due |
last_reminder_at | datetime |
auto |
timestamp of when the last reminder about the event was sent to participants |
missed_notification_at | datetime |
auto |
timestamp of when the missed notification was sent to Tunga |
created_by | User |
auto |
user that created the progress event |
created_at | datetime |
auto |
timestamp of when the object was created |
API only attributes
Attribute | Type | Required | Description |
---|---|---|---|
is_participant | boolean |
auto |
true if current user is a participant in event |
participants | User |
auto |
list of all event participants |
Relate API docs
- Manage progress events [http://sandbox.tunga.io/api/docs/#/progress-event]
14. ProgressReport
Model name:
ProgressReport
Model attributes
Attribute | Type | Required | Description |
---|---|---|---|
id | int |
auto |
primary key |
event | ProgressEvent |
true |
ProgressEvent for which the report is required |
user | User |
auto |
user that created the progress report |
created_at | datetime |
auto |
timestamp of when the object was created |
| |||
status | string |
yes - for no - for all other cases |
current status of the project or milestone one of
|
stuck_reason | string |
yes - only if no - for all other cases |
reason for being stuck if one of
|
stuck_report | string |
yes - only if no - for all other cases |
detailed reason for being stuck if |
percentage | number |
yes - for no - for all other cases |
an integer |
accomplished | string |
yes - for no - for all other cases |
description of what has been accomplished since the last update |
todo | string |
yes - for no - for all other cases |
description of what is now being done |
next_deadline | date |
yes - for no - for all other cases |
date for next deadline |
next_deadline_meet | boolean |
yes - for no - for all other cases |
indicates whether the next deadline will be met |
next_deadline_fail_reason | string |
yes - only for no - for all other cases |
reason why the next deadline will not be met |
| |||
rate_deliverables | number |
yes - for no - for all other cases |
an integer |
| |||
last_deadline_met | boolean |
yes - for no - for all other cases |
indicates whether the last deadline was be met |
deadline_miss_communicated | boolean |
yes - only for no - for all other cases |
expresses whether the last deadline miss was communicated beforehand |
| |||
started_at | date |
yes - for no - for all other cases |
date when the project or milestone was started |
| |||
deadline_report | string |
yes - only for no - for all other cases |
reason why the last deadline was not be met |
team_appraisal | string |
yes - only for no - for all other cases |
detailed description of the team’s performance |
| |||
deliverable_satisfaction | boolean |
yes - only for no - for all other cases |
detailed description of the team’s performance |
rate_communication | number |
yes - for no - for all other cases |
an integer |
deliverable_report | string |
yes - only for no - for all other cases |
reason why |
communication_report | string |
yes - only for no - for all other cases |
reason why |
Relate API docs
- Manage progress reports [http://sandbox.tunga.io/api/docs/#/progress-report]
15. Comment
Model name:
Comment
Model attributes
Attribute | Type | Required | Description |
---|---|---|---|
id | int |
auto |
primary key |
user | User |
auto |
user that created the comment |
body | string |
no | the comment |
object_id | int |
no | id of the object the comment was added to |
content_type | ContentType |
no | ContentType of the object the comment was added to |
created_at | datetime |
auto |
timestamp of when the object was created |
Relate API docs
- Manage comments [http://sandbox.tunga.io/api/docs/#/comment]
16. Message
Model name:
Message
Model attributes
Attribute | Type | Required | Description |
---|---|---|---|
id | int |
auto |
primary key |
channel | Channel |
no | Channel the message was sent in |
user | User |
no | user that sent the message |
body | string |
no | the message |
created_at | datetime |
auto |
timestamp of when the object was created |
alt_user | json |
no | user object for external messages e.g Slack responses |
source | string |
no | message source either |
extra | json |
no | extra details about external messages e.g from Slack |
API only attributes
Attribute | Type | Required | Description |
---|---|---|---|
sender | object |
no | consolidated object representing the message sender user either user or alt_user or channel inquirer as the data source must include |
Relate API docs
- Manage messages [http://sandbox.tunga.io/api/docs/#/message]
17. Channel
Model name:
Channel
Model attributes
Attribute | Type | Required | Description |
---|---|---|---|
id | int |
auto |
primary key |
type | int |
auto |
channel type
default: |
subject | string |
no | topic of the channel |
last_read | int |
no | tracks last read activity id for guests |
object_id | int |
no | id of the object the channel was created for |
content_type | ContentType |
no | ContentType of the object the channel was created for |
created_by | User |
no | user that created the channel |
created_at | datetime |
auto |
timestamp of when the object was created |
Relate API docs
- Manage channels [http://sandbox.tunga.io/api/docs/#/channel]
18. ChannelUser
Model name:
ChannelUser
Model attributes
Attribute | Type | Required | Description |
---|---|---|---|
id | int |
auto |
primary key |
channel | Channel |
true |
Channel the participant is part of |
user | User |
true |
user that is participating in the channel |
last_read | int |
no | tracks last read activity id for participant |
last_email_at | datetime |
auto |
timestamp of when the last email about the missed messages was sent |
created_at | datetime |
auto |
timestamp of when the object was created |
19. Upload
Model name:
Upload
Model attributes
Attribute | Type | Required | Description |
---|---|---|---|
id | int |
auto |
primary key |
file | object |
no | Uploaded file object |
user | User |
no | user that uploaded the file |
object_id | int |
no | id of the object the file was uploaded to |
content_type | ContentType |
no | ContentType of the object the file was uploaded to |
created_at | datetime |
auto |
timestamp of when the file was uploaded |
20. ContentType
Model name:
ContentType
Django’s built in ContentType model
https://docs.djangoproject.com/en/dev/ref/contrib/contenttypes/#the-contenttype-model