Contributors endpoint¶
Fetch all contributors¶
- contributors(project_id[, params=None])¶
- Parameters:
project_id (str) – ID of the project to fetch contributors for.
params (dict) – (optional) pagination options
- Returns:
Collection of contributors
Example:
client.contributors('123.abc', {"limit": 3, "page": 2})
Fetch a single contributor¶
- contributor(project_id, contributor_id)¶
- Parameters:
project_id (str) – ID of the project
contributor_id (int or str) – ID of the contributor to fetch
- Returns:
Contributor model
Example:
contributor = client.contributor('123.abc', 2345)
contributor.email == "test@example.com"
contributor.fullname == "John Doe"
Create one or multiple contributors¶
- create_contributors(project_id, params)¶
- Parameters:
project_id (str) – ID of the project
params (list or dict) – Contributors parameters
- Returns:
Contributors collection
Creating multiple contributors example:
client.create_contributors('123.abc', [
{
"email": "demo@python.org",
"fullname": "Python demo 1",
"languages": [{
"lang_iso": "en",
"is_writable": False
}]
},
{
"email": "demo2@python.org",
"fullname": "Python demo 2",
"languages": [{
"lang_iso": "en",
"is_writable": True
}]
}
])
Creating one contributor:
client.create_contributors(PROJECT_ID, {
"email": "demo3@python.org",
"fullname": "Python demo 3",
"languages": [{
"lang_iso": "ru_RU",
"is_writable": True
}]
})
Update contributor¶
- update_contributor(project_id, contributor_id, params)¶
- Parameters:
project_id (str) – ID of the project
contributor_id (int or str) – ID of the contributor to update
params (dict) – Update parameters
- Returns:
Contributor model
Example:
client.update_contributor('123.abc', 23456, {
"is_reviewer": True,
"languages": [
{
"lang_iso": "ru_RU",
"is_writable": True
},
{
"lang_iso": "en",
"is_writable": False
}
]
})
Delete contributor¶
- delete_contributor(project_id, contributor_id)¶
- Parameters:
project_id (str) – ID of the project
contributor_id (int or str) – ID of the contributor to delete
- Returns:
Dictionary with project ID and “contributor_deleted” set to True
- Rtype dict:
Example:
client.delete_contributor('123.abc', 34567)