Mojo UpDocs
API reference

People

GET/people/v1/directory

Search by name or email, so a teammate is picked by name and never by a bare id. Each person may carry linked, the GitHub, Azure DevOps and Jira accounts they linked, by name only (never a token); it is left out when they linked none. A device token or a person's sign-in works.

Authorization

AuthorizationBearer <token>

A device access token from the device-code flow (aioe_at_…). A DPoP-bound token is sent as Authorization: DPoP <token> with a fresh DPoP proof on every request.

In: header

Query Parameters

q*string

At least two characters, matched case-insensitively against name and email.

Length2 <= length
limit?integer

At most 50.

Range1 <= value <= 50
Default20
projectId?string

Adds onProject to each person.

Header Parameters

X-Aioe-Organisation?string

Mojo Up AI Cloud only, with a person's access token: the id of the organisation the request is for. A person's session is not tied to one organisation, so each request names it. Device tokens already carry their organisation.

Response Body

application/json

application/json

application/json

curl -X GET "https://example.com/people/v1/directory?q=string"
{  "people": [    {      "id": "string",      "name": "string",      "email": "string",      "picture": "http://example.com",      "onProject": true,      "linked": {        "github": {          "login": "string"        },        "azureDevOps": {          "uniqueName": "string",          "displayName": "string"        },        "jira": {          "accountId": "string",          "displayName": "string"        }      }    }  ],  "more": true,  "sources": [    "aioe"  ]}
GET/people/v1/me

The person as this organisation vouches for them. profileUrl is the console page where they link their GitHub, Azure DevOps and Jira accounts.

Authorization

AuthorizationBearer <token>

A device access token from the device-code flow (aioe_at_…). A DPoP-bound token is sent as Authorization: DPoP <token> with a fresh DPoP proof on every request.

In: header

Header Parameters

X-Aioe-Organisation?string

Mojo Up AI Cloud only, with a person's access token: the id of the organisation the request is for. A person's session is not tied to one organisation, so each request names it. Device tokens already carry their organisation.

Response Body

application/json

application/json

curl -X GET "https://example.com/people/v1/me"
{  "id": "string",  "name": "string",  "email": "string",  "picture": "string",  "profileUrl": "string"}

A person's picture

GET/people/v1/{id}/picture

The picture of any person in the caller's organisation, proxied by the platform, whether or not you share a project with them. Read by a person: a sign-in or a desktop's device token. Answers 404 when the person has none, belongs to another organisation, or has a picture over 256 KB or not a PNG, JPEG, GIF or WebP. The ETag is a hash of the picture; send it back as If-None-Match for a 304.

Authorization

AuthorizationBearer <token>

A device access token from the device-code flow (aioe_at_…). A DPoP-bound token is sent as Authorization: DPoP <token> with a fresh DPoP proof on every request.

In: header

Path Parameters

id*string

The person.

Header Parameters

X-Aioe-Organisation?string

Mojo Up AI Cloud only, with a person's access token: the id of the organisation the request is for. A person's session is not tied to one organisation, so each request names it. Device tokens already carry their organisation.

If-None-Match?string

The ETag of the copy you hold.

Response Body

application/json

application/json

application/json

curl -X GET "https://example.com/people/v1/string/picture"
"string"