Meetings

Note the API is currently in beta and is disabled by default. Breaking changes may occur as we finalise the functionality.
Contact us if you want to test the API and we'll turn it on for your account.

IDs

:meeting_id can be either the ID of the meeting, or its slug.

Attributes

Basic Attributes

When listing meetings, the following basic attributes are included:

  • id - The meeting's ID
  • title - The title
  • description - Meeting description
  • slug - The slug, can be used to refer to the meeting instead of the ID
  • start_at - When the meeting starts/started, timestamp
  • project - The workspace the meeting belongs to
  • attendees - Array of attendees
  • shared_with - Array of people the meeting is shared with
  • location - Where the meeting is to be held
  • privacy - The privacy setting, can be account, project (workspace), public, private
  • categories - Array of categories
  • short_url - A bitly URL if one has been set for the meeting
  • conference_number - Phone number to call in to
  • conference_ext - Extension for the conference call
  • conference_password - Password for the conference call

Extended Attributes

When fetching a specific meeting, the following attributes are also returned:

  • agenda - array of agenda items
  • minutes - array of minutes

Privacy

The privacy attribute of the meeting can be one of the following:

  • private - only people the meeting is shared with can access it.
  • project - anyone in the workspace (project) and shared with, this is the default.
  • account - anyone in the account.
  • public - anyone in the world who knows the URL.

To change who the meeting is shared with, send an array of people ids in shared_with_ids when creating or updating the meeting.

Tags

When fetching lists of meetings, you can filter by tag with the tag parameter.
For example, to only show meetings in the finance category simply append?tag=finance to the query-string.

List Meetings

GET https://acme.minutebase.com/api/v1/meetings/:yyyy-:mm-:dd
GET https://acme.minutebase.com/api/v1/workspaces/:workspace_id/meetings/:yyyy-:mm-:dd

Returns a paginated list of meetings starting on the date specified.

If no date is specified, it defaults to today.

Default order is ascending, but you can override that with the order parameter which can be one of asc or desc.

Meetings on a specific day

GET https://acme.minutebase.com/api/v1/meetings/day/:yyyy-:mm-:dd
GET https://acme.minutebase.com/api/v1/workspaces/:workspace_id/meetings/day/:yyyy-:mm-:dd

Returns a non-paginated list of meetings for the date specified.

Meetings in a specific week

GET https://acme.minutebase.com/api/v1/meetings/week/:yyyy-:mm-:dd
GET https://acme.minutebase.com/api/v1/workspaces/:workspace_id/meetings/week/:yyyy-:mm-:dd

This will return a non-paginated list of meetings in the week of the date specified.
The start date of the week comes from your preferences, or can be overridden by specifying a start_day:

  • 0 - Sunday
  • 1 - Monday
  • 6 - Saturday

Meetings in a specific month

GET https://acme.minutebase.com/api/v1/meetings/month/:yyyy-:mm
GET https://acme.minutebase.com/api/v1/workspaces/:workspace_id/meetings/month/:yyyy-:mm

This will return a non-paginated list of meetings in the month specified.
By default this just contains meetings in that month, but if you want to display a calendar with the previous and next months days included, pass calendar=true in the query-string.

When displaying calendars, you can override the week start in the same manner as the week-view by setting start_day

Get Meeting

GET https://acme.minutebase.com/api/v1/meetings/:meeting_id

Create Meeting

POST https://acme.minutebase.com/api/v1/meetings

Input

POST the attributes of the new meeting as a JSON document.

If you don't set a meeting title, it will default to "A New Meeting".

The workspace is set with the project_id attribute, where project_id is the ID of the workspace. In future we may rename/alias this to workspace_id for consistency.

Attendees can be set by passing an array of people's IDs to attendee_ids, or a hash of IDs and statuses.

See attendees for more details.

{
    "title":"A New Meeting With The API",
    "start_at":1308576890,
    "attendee_ids":["4df2b437cf02a319a90009ea"],
    "project_id":"4d41ee7acf02a38790000002",
    "categories":["API", "Test"]
}

Response

{
    "id":"4dff4e7bcf02a3824b00014b",
    "title":"A New Meeting With The API",
    "slug":"a-new-meeting-with-the-api",
    "start_at":1308576890,
    "project":
    {
        "id":"4d41ee7acf02a38790000002",
        "title":"A new project",
        "slug":"a-new-project",
        "description":null,
        "flag":
        {
            "left":"green",
            "right":"blue"
        },
        "created_at":1296166522,
        "archived_at":null
    },
    "location":null,
    "privacy":"project",
    "categories":
    [
        "API",
        "Test"
    ],
    "short_url":null,
    "conference_number":null,
    "conference_ext":null,
    "conference_password":null,
    "description":"",
    "attendees":
    [
        {
            "id":"4df2b437cf02a319a90009ea",
            "user_id":"4df2b437cf02a319a90009eb",
            "firstname":"Richard",
            "surname":"Livsey",
            "email":"richard@minutebase.com",
            "administrator":true,
            "company":"MinuteBase",
            "department":null,
            "job_title":"Co-Founder",
            "created_at":1307751479,
            "status":"present"
        }
    ],
    "shared_with":
    [
    ]
}

Update Meeting

PUT https://acme.minutebase.com/api/v1/meetings/:meeting_id

Input

PUT the attributes you want to change

{
    "title":"A New Title",
    "categories":["API", "Test", "Another"]
}

Response

{
    "id":"4dff4e7bcf02a3824b00014b",
    "title":"A New Title",
    "slug":"a-new-meeting-with-the-api",
    "start_at":1308576890,
    "project":
    {
        "id":"4d41ee7acf02a38790000002",
        "title":"A new project",
        "slug":"a-new-project",
        "description":null,
        "flag":
        {
            "left":"green",
            "right":"blue"
        },
        "created_at":1296166522,
        "archived_at":null
    },
    "location":null,
    "privacy":"project",
    "categories":
    [
        "API",
        "Test",
        "Another"
    ],
    "short_url":null,
    "conference_number":null,
    "conference_ext":null,
    "conference_password":null,
    "description":"",
    "attendees":
    [
        {
            "id":"4df2b437cf02a319a90009ea",
            "user_id":"4df2b437cf02a319a90009eb",
            "firstname":"Richard",
            "surname":"Livsey",
            "email":"richard@minutebase.com",
            "administrator":true,
            "company":"MinuteBase",
            "department":null,
            "job_title":"Co-Founder",
            "created_at":1307751479,
            "status":"present"
        }
    ],
    "shared_with":
    [
    ]
}

Delete Meeting

DELETE https://acme.minutebase.com/api/v1/meetings/:meeting_id

Response

204 HTTP status with an empty body

Agenda

See agenda

Minutes

See minutes