Money Pools

The money pool object

Attribute

Type

Description

id

uuid

The unique identifier for the money pool.

status

string

The money pool status. open closed

amount

float

The total amount collected.

currency

string

Three-letter ISO-4217 code.

description

string

The money pool title.

detailed_description

string

The money pool description.

is_public

boolean

Whether the money pool is publicly available.

has_unique_participants

boolean

Whether users can only contribute once to the money pool.

allows_optional_amount

boolean

Whether users can pay an optional amount of their choice.

minimum_user_amount

float

The lowest amount of a single contribution made to the money pool.

maximum_user_amount

float

The highest amount of a single contribution made to the money pool.

contribution_options

array

A list of available contribution options.

image

Image

Default image if uploaded.

images

array

Array of all images if uploaded.

owner

Owner

The user which created the money pool.

participation

Participation

Participation information for the money pool.

meta

string

A JSON object which can store meta data used by the client.

start_at

time

The time at which the money pool became or will become available.

end_at

time

The time at which the money pool became or will become unavailable.

created_at

time

The time when the money pool was created.

updated_at

time

The time when the money pool was updated.

Example

{
"id": "c5d8701e-05cf-4b15-52bf-1cf76c3d84f2",
"status": "open",
"amount": 60.00,
"currency": "EUR",
"description": "Money Pool Title",
"detailed_description": "Money Pool Description",
"is_public": true,
"has_unique_participants": true,
"allows_optional_amount": true,
"minimum_user_amount": 50.00,
"maximum_user_amount": 150.00,
"contribution_options": [
{
"id": "a0bcfb20-99fd-465d-6e23-2e19e8952420",
"title": "Option A",
"amount": 50.00
}
],
"image": {
"id": "75cc21be-fe47-4702-74bc-07b84beed5fb",
"url": "https://{imagehost}/ui/pools/c5d8701e-05cf-4b15-52bf-1cf76c3d84f2.jpg",
"full_screen_url": "https://{imagehost}/full/pools/c5d8701e-05cf-4b15-52bf-1cf76c3d84f2.jpg",
"thumbnail_url": "https://{imagehost}/thumbnail/pools/c5d8701e-05cf-4b15-52bf-1cf76c3d84f2.jpg",
"created_at": "2017-09-04T12:26:43.403883Z",
"updated_at": "2017-09-04T12:26:43.403883Z"
},
"owner": {
"id": "add5c52a-0c57-4d5c-7525-db14566f2f1a",
"first_name": "John",
"last_name": "Dough",
"full_name": "John Dough",
"username": "jondough",
"country": "UK",
"timezone": "Europe/London",
"timezone_utc_offset": 0,
"verified": true,
"official": true,
"image": {
"id": "75cc21be-fe47-4702-74bc-07b84beed5fb",
"url": "https://{imagehost}/ui/users/ad2636c3-82fe-4c45-af2d-d6324b2e618f.jpg",
"full_screen_url": "https://{imagehost}/full/users/ad2636c3-82fe-4c45-af2d-d6324b2e618f.jpg",
"thumbnail_url": "https://{imagehost}/thumbnail/users/ad2636c3-82fe-4c45-af2d-d6324b2e618f.jpg",
"created_at": "2017-09-04T12:26:43.403883Z",
"updated_at": "2017-09-04T12:26:43.403883Z"
},
"relationships": [
{
"id": "4ec5c820-520d-4668-ba84-0d7bdee23af5",
"contact_id": "a5d8ecf0-0002-4294-8d36-c0336d3bef35",
"type": "contact",
"created_at": "2017-04-19T14:35:09.308904Z",
"updated_at": "2017-04-19T14:35:09.308904Z"
}
]
},
"participation": {
"count": {
"invited": 0,
"paid": 2,
"pending": 2,
"rejected": 1,
"total": 5
},
"first_names": ["Arnar", "Oskar", "Jon"]
},
"meta": "",
"start_at": "0001-01-01T00:00:00Z",
"end_at": "0001-01-01T00:00:00Z",
"created_at": "2017-09-04T12:26:43.35539Z",
"updated_at": "2017-09-04T12:26:43.48788Z"
}

The contribution option object

Attribute

Type

Description

id

uuid

The unique identifier for the contribution option.

title

string

The option description.

amount

float

The payable amount.

Example

{
"id": "a0bcfb20-99fd-465d-6e23-2e19e8952420",
"title": "Option A",
"amount": 50.00
}

Get a list of money pools

Get a list of all pools created by the user and pools available to the user but which the user did not create, including public pools and pools the user is invited to or has participated in. This can be specified by using the owner filter.

Request
Response
Request

GET /v1/pools

Query Parameters

Name

Type

Description

page

int

Item pagination.

limit

int

Number of items to return per page.

sort

string

Sort the results by created_at, updated_at.

filter

string

Filter the results.

search

string

Search money pools by description and detailed description.

Filtering

Attribute

Type

Operators

Values

owner

boolean

eq

true, false

status

string

eq, in

open, closed, all default: all

Response

200 OK

Returns a list of money pool objects.

Create a money pool

Create a new money pool.

Request
Response
Request

POST /v1/pools

Attribute

Type

Description

description

string

The money pool title. required

detailed_description

string

Any description for the money pool.

funding_source_id

uuid

The unique identifier of the funding source receiving payment. required

hashtag

string

An optional hashtag for the money pool.

contribution_options

array

A list of contribution options.

currency

string

Three-letterr ISO-4217 code. Must be a supported currency. required

invites

array

A list of users that will be invited to participate in the money pool.

image

Image

An optional image object. This can also be performed after creating the money pool.

image_ids

array

A list of image identifiers, for uploading multiple images.

is_public

boolean

Whether everyone can open the money pool or invited users only. Default: false.

only_owner_sees_participants

boolean

Whether the owner is the only one who can see the list of participants. Default: false.

has_unique_participants

boolean

Whether users can only contribute once to the money pool. Default: false

allows_optional_amount

boolean

Whether users can pay an optional amount of their choice. Default: false

minimum_user_amount

float

The lowest amount of a single contribution made to the money pool.

maximum_user_amount

float

The highest amount of a single contribution made to the money pool.

start_at

time

The time at which the money pool will become available.

end_at

time

The time at which the money pool will become unavailable.

{
"description": "Money Pool #1",
"detailed_description": "This is a more detailed, multiple line decription.",
"funding_source_id": "d4097613-3b63-4dbb-befe-2211b9dc821a",
"hashtag": "moneypool1",
"contribution_options": [
{
"title": "Payment title",
"amount": 10.0
}
],
"currency": "EUR",
"invites": [
"556b6fc6-e8dd-4bfa-89e0-9fbd286c96c3",
"1d27d1c8-5e58-4d6e-87f7-b6890672294e"
],
"image": {
"url": "https://upload.wikimedia.org/wikipedia/en/a/a9/Example.jpg"
},
"is_public": true,
"only_owner_sees_participants": true,
"has_unique_participants": true,
"allows_optional_amount": true,
"minimum_user_amount": 50.0,
"maximum_user_amount": 150.0,
"start_at": "2017-12-20 16:00:00",
"end_at": "2017-12-28 23:00:00"
}
Response

201 Created

Returns a money pool object.

Update a money pool

Update an existing money pool. Anything defined will be updated, otherwise current values will stay unchanged. To remove all contribution options, define contribution_options as an empty array. To leave contribution options unchanged, simply do not define contribution_options in the JSON. Currency can not be changed.

Request
Response
Request

PUT /v1/pools/{id}

Attribute

Type

Description

description

string

The money pool title.

detailed_description

string

Any description for the money pool.

hashtag

string

An optional hashtag for the money pool.

contribution_options

array

A list of contribution options.

invites

array

A list of users that will be invited to participate in the money pool.

image

Image

An optional image object. This can also be performed after creating the money pool.

is_public

boolean

Whether everyone can open the money pool or invited users only.

only_owner_sees_participants

boolean

Whether the owner is the only one who can see the list of participants.

has_unique_participants

boolean

Whether users can only contribute once to the money pool.

allows_optional_amount

boolean

Whether users can pay an optional amount of their choice.

minimum_user_amount

float

The lowest amount of a single contribution made to the money pool.

maximum_user_amount

float

The highest amount of a single contribution made to the money pool.

start_at

time

The time at which the money pool will become available.

end_at

time

The time at which the money pool will become unavailable.

{
"description": "New Title"
}
Response

200 OK

Returns a money pool object.

Close money pool

Closes a money pool so users cannot contribute anymore. The pool's fulfillment status will become fulfilled and its status closed.

Request
Response
Request

POST /v1/pools/{id}/close

Response

200 OK

Invite users to participate

Adds users as participants marked as invited.

Request
Response
Request

POST /v1/pools/{id}/invite

Attribute

Type

Description

user_ids

array

An array of unique identifiers of users being invited. required

{
"user_ids": [
"556b6fc6-e8dd-4bfa-89e0-9fbd286c96c3",
"1d27d1c8-5e58-4d6e-87f7-b6890672294e"
],
}
Response

200 OK

Get money pool participants

Get a list of participants in a money pool.

Request
Response
Request

GET /v1/pools/{id}/participants

Query Parameters

Name

Type

Description

page

int

Item pagination.

limit

int

Number of items to return per page.

sort

string

Sort the results by created_at, updated_at.

filter

string

Filter the results.

Filtering

Attribute

Type

Operators

Values

status

string

eq

invited, paid, rejected

Response

200 OK

Returns a list of participant objects.

[
{
"id": "a0bcfb20-99fd-465d-6e23-2e19e8952420",
"user_id": "add5c52a-0c57-4d5c-7525-db14566f2f1a",
"transaction_id": "875ef796-88a1-4c7f-8755-d4cb066b9a3e",
"status": "paid",
"amount": 20.00,
"currency": "EUR",
"full_name": "Arnar Participant",
"username": "arnarpart",
"created_at": "2017-09-04T12:26:43.398646Z",
"updated_at": "2017-09-04T12:26:43.398646Z"
}
]

Export list of participants

Request a list of participants to be sent to a specific email address.

Request
Response
Request

POST /v1/pools/{id}/participants/export

Attribute

Type

Description

email

string

The email which the exported file should be sent to. required

format

string

The file format of the exported list. Options: csv, excel. Default: csv

{
"email": "[email protected]",
"format": "excel"
}
Response

200 OK

Contribute to a money pool

The user contributes to the money pool by making a payment. Payment source and PIN is required for payments.

Request
Response
Request

POST /v1/pools/{id}/participants

Attribute

Type

Description

amount

float

The amount being paid. required

contribution_option_id

uuid

The unique identifier for the contribution option, if selected by the user.

funding_source_id

uuid

The unique identifier for the funding source which will be withdrawn from. required

pin

string

The current user's PIN. required

{
"amount": 50.0,
"contribution_option_id": "4dbc5121-a7fa-4cd0-9759-9209ea1ef6b0",
"funding_source_id": "d4097613-3b63-4dbb-befe-2211b9dc821a",
"pin": "1234"
}
Response

201 Created

Returns a participant object.