跳转至

获取授权用户在某个组织的成员资料

GET /api/v5/user/memberships/orgs/{org}

用户调用此接口,进行获取授权用户在一个组织的成员资料操作。

访问令牌支持说明

  • AtomGit 用户访问令牌(AtomGit user access tokens)

是否允许匿名访问

此接口不允许匿名访问

请求参数

参数名 位置 类型 必填 说明
org path string 是 企业的路径(path/login)
access_token query string 是 用户授权码

响应参数

字段 类型 必返 可为空 说明
id integer 是 否 组织 id
path string 是 否 组织的路径(path)
name string 是 否 组织名称
url string 是 否 组织主页 url
avatar_url string 是 否 组织头像 url
user object 是 否 授权用户在组织的成员用户信息
active boolean 是 否 是否为活跃成员
role string 是 否 成员角色,取值如 viewer / customized / member / admin
organization object 是 否 组织信息

user 对象

字段 类型 必返 可为空 说明
user.id string 是 否 用户 id
user.login string 是 否 用户名
user.name string 是 否 用户昵称
user.avatar_url string 是 否 用户头像 url
user.html_url string 是 否 用户主页 url

organization 对象

字段 类型 必返 可为空 说明
organization.id integer 是 否 组织 id
organization.login string 是 否 组织登录名(path)
organization.name string 是 否 组织名称

失败响应

只有 200/成功响应是不够的:调用方需要知道失败长什么样才能写错误处理。

该接口在未认证或用户/组织不存在时返回错误响应,错误字段名以后端实际返回为准:

401 未认证

{
  "errorCode": 401,
  "errorCodeName": "UNAUTHORIZED",
  "errorMessage": "未登录"
}

404 用户或组织未找到

{
  "errorCode": 404,
  "errorCodeName": "NOT_FOUND",
  "errorMessage": "组织 Go-Tribe 未找到"
}

HTTP 响应状态码

该接口可能返回以下 HTTP 状态码:

状态码 说明
200 成功(OK)
401 需要认证(Requires authentication)
404 用户或组织未找到(Not found)
429 请求过于频繁,触发限流
500 系统内部错误

请求示例

参数说明

示例必须与本文档其余部分自洽,照抄即可调用成功:

<org> 替换为组织的路径(企业的路径 path/login); <token> 替换为你的 AtomGit 用户访问令牌。

cURL

curl -X GET 'https://api.atomgit.com/api/v5/user/memberships/orgs/<org>?access_token=<token>' \
  -H 'Accept: application/json'

JavaScript

// 原生 fetch (Node.js 18+ / 浏览器)
const response = await fetch(
  "https://api.atomgit.com/api/v5/user/memberships/orgs/<org>?access_token=<token>",
  {
    headers: {
      "Accept": "application/json",
    },
  },
);

if (!response.ok) {
  throw new Error(`请求失败: ${response.status}`);
}

const data = await response.json();
console.log(data);

Python

import requests

resp = requests.get(
    "https://api.atomgit.com/api/v5/user/memberships/orgs/<org>",
    params={"access_token": "<token>"},
    headers={
        "Accept": "application/json",
    },
    timeout=10,
)
resp.raise_for_status()

print(resp.json())

响应示例

状态码: 200

{
  "id": 1783195,
  "path": "Go-Tribe",
  "name": "gotribe",
  "url": "https://api.atomgit.com/Go-Tribe",
  "avatar_url": "https://api.atomgit.com/avatar/Go-Tribe.png",
  "user": {
    "id": "650d67fbae6d795139b49b41",
    "login": "octocat",
    "name": "octocat",
    "avatar_url": "https://api.atomgit.com/avatar/octocat.png",
    "html_url": "https://api.atomgit.com/octocat"
  },
  "active": true,
  "role": "admin",
  "organization": {
    "id": 1783195,
    "login": "Go-Tribe",
    "name": "gotribe"
  }
}

错误码

错误码 说明
401 未认证或凭证无效(缺少/无效的访问凭证)
404 用户或组织未找到
400 参数错误或请求无法解析
429 请求过于频繁,触发限流
500 系统内部错误

本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 gitcode-dev/atomgit-api-doc