Skip to content
Navigation

Give a member a role in a product

Gives someone with an existing Arbol account a role in Raíz, Agenda, Ámbar or Account, joining them to this organization when needed. They sign in with their current password. Someone without an account is invited with invitations.create.

  • Scope: account:members:write
  • Credentials: an API key, a client-credentials token or a person's access token
  • Effect: writes; not idempotent: check the outcome before you retry
  • Limits: request body up to 32 KB, response up to 256 KB
  • CLI: arbol account members create · MCP tool: account_members_create
POST
https://api.getarbol.com/v1/account/members

Authorization

  • Authorization
    string
    required
    Bearer <token>, where the token is an API key, a client-credentials token or a person's access token with the scope account:members:write. Get an API key.

Request body JSON required

  • email
    string
    required

    The email of someone with an existing Arbol account, in this organization or another.

    format: email · maxLength: 320
  • product
    raiz
    or
    agenda
    or
    ambar
    or
    account
    required

    A product whose team Account administers: Raíz, Agenda, Ámbar or Account itself.

  • role
    string
    required

    A role name, such as calendar:operator.

    maxLength: 128 · minLength: 1

Returns

200

Successful operation.

JSON
  • success
    true
    required
  • data
    object
    required
    • id
      string
      required
      maxLength: 256 · minLength: 1
    • name
      string | null
      required
      maxLength: 1024
    • email
      string | null
      required
      maxLength: 320
    • picture
      string | null
      required
      maxLength: 2048
    • roles
      array of
      object
      required

      Their roles in the products Account administers, and a product's owner role, which only Arbol assigns.

      • product
        raiz
        or
        agenda
        or
        ambar
        or
        account
        required

        A product whose team Account administers: Raíz, Agenda, Ámbar or Account itself.

      • role
        string
        required

        A role name, such as calendar:operator.

        maxLength: 128 · minLength: 1
    • protected
      boolean
      required

      They hold access only Arbol changes (owner, staff).

    • self
      boolean
      required

      The caller themselves.

  • error
    unknown
    required
  • metadata
    object
    required

    What every answer carries besides its data or error.

    • requestId
      string
      required

      Request correlation identifier, also sent as X-Request-Id.

400

INVALID_INPUT: The request does not match the published schema.
JSON
  • success
    false
    required
  • data
    unknown
    required
  • error
    object
    required

    The request does not match the published schema.

    • code
      INVALID_INPUT
      required

      The failure code, stable across releases.

    • message
      string
      required

      What went wrong, for people; it never contains input values.

    • retryable
      false
      required

      Whether repeating the same request may succeed.

    • data
      object
      required
      • issues
        optional
        array of
        object
        • path
          string
          required

          RFC 6901 JSON Pointer to the refused field; empty for the whole input.

          maxLength: 256
        • message
          string
          required
          maxLength: 256
  • metadata
    object
    required

    What every answer carries besides its data or error.

    • requestId
      string
      required

      Request correlation identifier, also sent as X-Request-Id.

401

UNAUTHORIZED: A valid access token is required.
JSON
  • success
    false
    required
  • data
    unknown
    required
  • error
    object
    required

    A valid access token is required.

    • code
      UNAUTHORIZED
      required

      The failure code, stable across releases.

    • message
      string
      required

      What went wrong, for people; it never contains input values.

    • retryable
      false
      required

      Whether repeating the same request may succeed.

    • data
      object
      required

      No fields.

  • metadata
    object
    required

    What every answer carries besides its data or error.

    • requestId
      string
      required

      Request correlation identifier, also sent as X-Request-Id.

403

  • FORBIDDEN: The token does not authorize this operation.
  • MEMBER_PROTECTED: This person holds access that only Arbol changes.
  • MEMBER_SELF_CHANGE: You cannot change your own access.
  • ROLE_NOT_ASSIGNABLE: You cannot assign this role.
JSON
  • success
    false
    required
  • data
    unknown
    required
  • error
    required

    One of the following:

    • ForbiddenFailure
      FORBIDDEN
      • code
        FORBIDDEN
        required

        The failure code, stable across releases.

      • message
        string
        required

        What went wrong, for people; it never contains input values.

      • retryable
        false
        required

        Whether repeating the same request may succeed.

      • data
        object
        required

        No fields.

    • AccountMemberProtectedFailure
      MEMBER_PROTECTED
      • code
        MEMBER_PROTECTED
        required

        The failure code, stable across releases.

      • message
        string
        required

        What went wrong, for people; it never contains input values.

      • retryable
        false
        required

        Whether repeating the same request may succeed.

      • data
        object
        required

        No fields.

    • AccountMemberSelfChangeFailure
      MEMBER_SELF_CHANGE
      • code
        MEMBER_SELF_CHANGE
        required

        The failure code, stable across releases.

      • message
        string
        required

        What went wrong, for people; it never contains input values.

      • retryable
        false
        required

        Whether repeating the same request may succeed.

      • data
        object
        required

        No fields.

    • AccountRoleNotAssignableFailure
      ROLE_NOT_ASSIGNABLE
      • code
        ROLE_NOT_ASSIGNABLE
        required

        The failure code, stable across releases.

      • message
        string
        required

        What went wrong, for people; it never contains input values.

      • retryable
        false
        required

        Whether repeating the same request may succeed.

      • data
        object
        required

        No fields.

  • metadata
    object
    required

    What every answer carries besides its data or error.

    • requestId
      string
      required

      Request correlation identifier, also sent as X-Request-Id.

404

MEMBER_NOT_FOUND: No existing Arbol account was found.
JSON
  • success
    false
    required
  • data
    unknown
    required
  • error
    object
    required

    No existing Arbol account was found.

    • code
      MEMBER_NOT_FOUND
      required

      The failure code, stable across releases.

    • message
      string
      required

      What went wrong, for people; it never contains input values.

    • retryable
      false
      required

      Whether repeating the same request may succeed.

    • data
      object
      required

      No fields.

  • metadata
    object
    required

    What every answer carries besides its data or error.

    • requestId
      string
      required

      Request correlation identifier, also sent as X-Request-Id.

409

  • IDENTITY_REJECTED: The identity service refused the change.
  • LAST_ADMINISTRATOR: The product must keep at least one administrator.
JSON
  • success
    false
    required
  • data
    unknown
    required
  • error
    required

    One of the following:

    • AccountIdentityRejectedFailure
      IDENTITY_REJECTED
      • code
        IDENTITY_REJECTED
        required

        The failure code, stable across releases.

      • message
        string
        required

        What went wrong, for people; it never contains input values.

      • retryable
        false
        required

        Whether repeating the same request may succeed.

      • data
        object
        required

        No fields.

    • AccountLastAdministratorFailure
      LAST_ADMINISTRATOR
      • code
        LAST_ADMINISTRATOR
        required

        The failure code, stable across releases.

      • message
        string
        required

        What went wrong, for people; it never contains input values.

      • retryable
        false
        required

        Whether repeating the same request may succeed.

      • data
        object
        required

        No fields.

  • metadata
    object
    required

    What every answer carries besides its data or error.

    • requestId
      string
      required

      Request correlation identifier, also sent as X-Request-Id.

413

REQUEST_TOO_LARGE: The request exceeds the allowed size.
JSON
  • success
    false
    required
  • data
    unknown
    required
  • error
    object
    required

    The request exceeds the allowed size.

    • code
      REQUEST_TOO_LARGE
      required

      The failure code, stable across releases.

    • message
      string
      required

      What went wrong, for people; it never contains input values.

    • retryable
      false
      required

      Whether repeating the same request may succeed.

    • data
      object
      required

      No fields.

  • metadata
    object
    required

    What every answer carries besides its data or error.

    • requestId
      string
      required

      Request correlation identifier, also sent as X-Request-Id.

415

UNSUPPORTED_MEDIA_TYPE: The request content type is not supported.
JSON
  • success
    false
    required
  • data
    unknown
    required
  • error
    object
    required

    The request content type is not supported.

    • code
      UNSUPPORTED_MEDIA_TYPE
      required

      The failure code, stable across releases.

    • message
      string
      required

      What went wrong, for people; it never contains input values.

    • retryable
      false
      required

      Whether repeating the same request may succeed.

    • data
      object
      required

      No fields.

  • metadata
    object
    required

    What every answer carries besides its data or error.

    • requestId
      string
      required

      Request correlation identifier, also sent as X-Request-Id.

429

RATE_LIMITED: The request rate limit was exceeded. Try again later.
JSON
  • success
    false
    required
  • data
    unknown
    required
  • error
    object
    required

    The request rate limit was exceeded. Try again later.

    • code
      RATE_LIMITED
      required

      The failure code, stable across releases.

    • message
      string
      required

      What went wrong, for people; it never contains input values.

    • retryable
      true
      required

      Whether repeating the same request may succeed.

    • data
      object
      required

      No fields.

  • metadata
    object
    required

    What every answer carries besides its data or error.

    • requestId
      string
      required

      Request correlation identifier, also sent as X-Request-Id.

500

INTERNAL_ERROR: The service could not complete the operation.
JSON
  • success
    false
    required
  • data
    unknown
    required
  • error
    object
    required

    The service could not complete the operation.

    • code
      INTERNAL_ERROR
      required

      The failure code, stable across releases.

    • message
      string
      required

      What went wrong, for people; it never contains input values.

    • retryable
      false
      required

      Whether repeating the same request may succeed.

    • data
      object
      required

      No fields.

  • metadata
    object
    required

    What every answer carries besides its data or error.

    • requestId
      string
      required

      Request correlation identifier, also sent as X-Request-Id.

502

OUTCOME_UNKNOWN: The operation may have been applied; check its result before repeating it.
JSON
  • success
    false
    required
  • data
    unknown
    required
  • error
    object
    required

    The operation may have been applied; check its result before repeating it.

    • code
      OUTCOME_UNKNOWN
      required

      The failure code, stable across releases.

    • message
      string
      required

      What went wrong, for people; it never contains input values.

    • retryable
      false
      required

      Whether repeating the same request may succeed.

    • data
      object
      required

      No fields.

  • metadata
    object
    required

    What every answer carries besides its data or error.

    • requestId
      string
      required

      Request correlation identifier, also sent as X-Request-Id.

503

  • UPSTREAM_UNAVAILABLE: The upstream service could not complete the request.
  • ACCOUNT_NOT_CONFIGURED: Account administration is not configured yet.
  • IDENTITY_UNAVAILABLE: The identity service did not answer.
JSON
  • success
    false
    required
  • data
    unknown
    required
  • error
    required

    One of the following:

    • UpstreamUnavailableFailure
      UPSTREAM_UNAVAILABLE
      • code
        UPSTREAM_UNAVAILABLE
        required

        The failure code, stable across releases.

      • message
        string
        required

        What went wrong, for people; it never contains input values.

      • retryable
        true
        required

        Whether repeating the same request may succeed.

      • data
        object
        required

        No fields.

    • AccountAccountNotConfiguredFailure
      ACCOUNT_NOT_CONFIGURED
      • code
        ACCOUNT_NOT_CONFIGURED
        required

        The failure code, stable across releases.

      • message
        string
        required

        What went wrong, for people; it never contains input values.

      • retryable
        false
        required

        Whether repeating the same request may succeed.

      • data
        object
        required

        No fields.

    • AccountIdentityUnavailableFailure
      IDENTITY_UNAVAILABLE
      • code
        IDENTITY_UNAVAILABLE
        required

        The failure code, stable across releases.

      • message
        string
        required

        What went wrong, for people; it never contains input values.

      • retryable
        true
        required

        Whether repeating the same request may succeed.

      • data
        object
        required

        No fields.

  • metadata
    object
    required

    What every answer carries besides its data or error.

    • requestId
      string
      required

      Request correlation identifier, also sent as X-Request-Id.

504

UPSTREAM_TIMEOUT: The upstream service did not respond before its deadline.
JSON
  • success
    false
    required
  • data
    unknown
    required
  • error
    object
    required

    The upstream service did not respond before its deadline.

    • code
      UPSTREAM_TIMEOUT
      required

      The failure code, stable across releases.

    • message
      string
      required

      What went wrong, for people; it never contains input values.

    • retryable
      true
      required

      Whether repeating the same request may succeed.

    • data
      object
      required

      No fields.

  • metadata
    object
    required

    What every answer carries besides its data or error.

    • requestId
      string
      required

      Request correlation identifier, also sent as X-Request-Id.

Escribe para buscar…

↑↓ navegar↵ seleccionarEsc cerrar