This documentation contains methods and extensive details regarding the usage of API Modules for a supplier, this documentation DOES NOT contain information regarding authentication. To learn how to authenticate please view this gist.
In this documentation when referencing "Modules" the document is referring to the module that is accessed via a URL of the API; https://idbutsolutions.io/api/v1/ModuleName
All methods can be used with either a POST
or GET
request but authentication is required for all.
Each authorized request to a existing module will always return a variable at the end of
the JSON response called ref_code
, this variable is a reference to your request used
for troubleshooting. This is useful to give to the administrator for support reasons.
Module Name | Description |
---|---|
OrdersPool | Fetches all orders that hasn't been accepted. Information about each order is limited until the order is accepted by either using the Web Application or the AcceptOrder Module in the API |
AcceptOrder | Accepts an existing order from the Orders Pool. This module cannot be used if the order has already been accepted |
SupplierOrders | Fetches orders history associated with your Account, you can filter what orders to be returned |
SupplierOrder | Returns information regarding the Order, Origin Details and FUT Details. This module only works with Orders you have access to |
CompleteOrder | Marks an existing order as completed |
SupplierInformation | Returns general information about price per coin, current account balance and other related details |
This module fetches all orders that hasn't been accepted, you can filter what orders you'd
like to see with the filter
parameter with either values (ALL
|XBOX
|PS4
).
The response will contain an array called pool
within the payload
object. This array
contains OrdersPoolObject
objects, which is a mere representation of an order but with
limited information. More information is available about the order once you have accepted
the order using the AcceptOrder
module
Parameters used/required for this request
Parameter Name | Default Value | Required | Description |
---|---|---|---|
filter | ALL |
No | The filter used to filter orders by platform, the acceptable values are XBOX , PS4 or ALL |
Variables returned in the Payload, types
Name | Type | Description |
---|---|---|
platform_filter | string |
The filter that was used when fetching these orders |
pool | array |
An array of OrdersPoolObject objects, when there are no results, this array is simply empty. |
This is an example response with this GET
request
https://idbutsolutions.io/api/v1/OrdersPool?api_key=<API_KEY>
{
"status": true,
"code": 200,
"payload": {
"platform_filter": "ALL",
"pool": [
{
"id": "d4495edbe9589973",
"date": "2019-02-11",
"time": "03:08:54",
"platform": "PS4",
"coins": 6000000,
"coins_f": "6.000.000",
"payout": 270
},
{
"id": "d14b613dbb8503a0",
"date": "2019-02-08",
"time": "20:57:41",
"platform": "XBOX ONE",
"coins": 1000000,
"coins_f": "1.000.000",
"payout": 35
}
]
},
"ref_code": "<REFERENCE CODE>"
}
The same request but there are no available orders in the pool
{
"status": true,
"code": 200,
"payload": {
"platform_filter": "ALL",
"pool": []
},
"ref_code": "<REFERENCE CODE>"
}
As explained above, the OrdersPoolObject
is a mere representation of the OrderObject
but with very limited information. More information about the order will be available once
you have accepted the order.
The object is represented with the following structure like this
{
"id": "d4495edbe9589973",
"date": "2019-02-11",
"time": "03:08:54",
"platform": "PS4",
"coins": 6000000,
"coins_f": "6.000.000",
"payout": 270
}
Name | Type | Description |
---|---|---|
id | string |
The order ID, this is used to reference the order when using the AcceptOrder module |
date | string |
The date of when this order was placed. (Year - Month - Day) |
time | string |
The time of when this order was placed. (Hour - Minute - Second) (GMT+1) |
platform | string |
The platform that this order is targeting (PS4 , XBOX ONE and ALL ). Note that when filtering the orders pool, instead of using XBOX ONE you need to use XBOX |
coins | int |
The amount of coins ordered |
coins_f | string |
The same value as coins but formatted to a string |
payout | int float |
The payout amount for this order |
This module allows you to accept an order from the Orders Pool, the usage is very self explanatory but it can only be used with Orders that hasn't been accepted yet.
Parameters used/required for this request
Parameter Name | Default Value | Required | Description |
---|---|---|---|
order_id | None | Yes | The ID of the Order that you want to accept |
This response contains no payload, but rather 3 variables excluding ref_code
.
The first variable status
is a boolean
which indicates if the request was successful
or not. This can be an indication if the order was accepted.
The second variable message
is the response message of the request explaining the
results. An successful request will always return "The order has been accepted". If
the request failed, the response message may differ.
Message | HTTP Response Code |
---|---|
The order has been accepted | 200 |
The order cannot be accepted because your account is limited | 403 |
The order cannot be found | 404 |
The order cannot be accepted because it has already been accepted | 409 |
There was an unknown error while trying to accept the order | 500 |
Last but not least the code
variable is simply a integer which represents the HTTP
response code that was returned
This is an example response with this GET
request
https://idbutsolutions.io/api/v1/AcceptOrder?api_key=<API_KEY>&order_id=<ORDER_ID>
{
"status": true,
"message": "The order has been accepted",
"code": 200,
"ref_code": "<REFERENCE CODE>"
}
Here are the other possible responses but with the same request
{
"status": false,
"message": "The order cannot be accepted because it has already been accepted",
"code": 409,
"ref_code": "<REFERENCE CODE>"
}
{
"status": false,
"message": "The order cannot be accepted because your account is limited",
"code": 403,
"ref_code": "<REFERENCE CODE>"
}
{
"status": false,
"message": "The order cannot be found",
"code": 404,
"ref_code": "<REFERENCE CODE>"
}
{
"status": false,
"message": "The order cannot be accepted because it has already been accepted",
"code": 409,
"ref_code": "<REFERENCE CODE>"
}
{
"status": false,
"message": "There was an unknown error while trying to accept the order",
"code": 500,
"ref_code": "<REFERENCE CODE>"
}
This module allows you to view your Orders History, this will return a payload
with a
orders
array, each item in the array is a OrderObject
Object. In the case that there
are no orders the orders
array will simply return no objects; ([]
)
Parameters used/required for this request
Parameter Name | Default Value | Required | Description |
---|---|---|---|
current_page | 1 | No | The current page of the orders history |
Variables returned in the Payload, types
Name | Type | Description |
---|---|---|
total_pages | int |
The total pages that are available |
orders | array |
An array of OrderObject objects |
This is an example response with this GET
request
https://idbutsolutions.io/api/v1/SupplierOrders?api_key=<API_KEY>¤t_page=1
{
"status": true,
"code": 200,
"payload": {
"total_pages": 1,
"orders": [
{
"id": "357b4e0335d07911",
"status": "Incomplete",
"status_code": 0,
"platform": "XBOX ONE",
"coins": 5000000,
"coins_f": "5.000.000",
"payout": 175,
"origin": {
"email": "[email protected]",
"password": "SuperPassword123",
"backup_codes": [
12345678
]
},
"fut": {
"club_name": null,
"persona_name": null,
"security_answer": null
},
"date": "2019-02-12",
"time": "18:30:09"
},
{
"id": "29c475f972399157",
"status": "Completed",
"status_code": 1,
"platform": "PS4",
"coins": 1000000,
"coins_f": "1.000.000",
"payout": 45,
"origin": {
"email": "[email protected]",
"password": "NotMyPassword!",
"backup_codes": [
93209320,
18439120
]
},
"fut": {
"club_name": null,
"persona_name": null,
"security_answer": "exampleAnswer123"
},
"date": "2019-02-12",
"time": "18:30:01"
}
]
},
"ref_code": "<REFERENCE CODE>"
}
The same request above but there are no orders to be displayed
{
"status": true,
"code": 200,
"payload": {
"total_pages": 0,
"orders": []
},
"ref_code": "<REFERENCE CODE>"
}
The same module but with the current_page
parameter set to a non-existent page
https://idbutsolutions.io/api/v1/SupplierOrders?api_key=<API_KEY>¤t_page=0
{
"status": false,
"message": "The page does not exist",
"code": 404,
"ref_code": "<REFERENCE CODE>"
}
This object is a full representation of the order and the related information being associated with it. The object would be represented with a structure like this
{
"id": "29c475f972399157",
"status": "Completed",
"status_code": 1,
"platform": "PS4",
"coins": 1000000,
"coins_f": "1.000.000",
"payout": 45,
"origin": {
"email": "[email protected]",
"password": "NotMyPassword!",
"backup_codes": [
93209320,
18439120
]
},
"fut": {
"club_name": null,
"persona_name": null,
"security_answer": "exampleAnswer123"
},
"date": "2019-02-12",
"time": "18:30:01"
}
Each property that does not contain any information will simply be null
, but the
property will still exist.
Name | Type | Description |
---|---|---|
id | string |
The ID of the Order |
status | string |
The status of the Order represented as a string. ("Unknown", "Incomplete", "Completed", "Failed", "Canceled", "Ongoing Issues", "Cancellation in progress", "Cancellation awaiting approval from Administrator") |
status_code | int |
The same purpose as status but represented as a integer instead of a string. See the table below for the meaning of each integer |
platform | string |
The platform that this order is for "XBOX ONE" or "PS4" |
coins | int |
The amount of coins requested to be transferred for this order |
coins_f | string |
Same value as coins but represented as a formatted string (1000000 => "1.000.000") |
payout | int float |
The payout value in euros for when this order gets completed |
origin | OriginObject |
Contains information regarding the origin account |
fut | FutObject |
Contains information regarding FUT |
date | string |
The date that this order was accepted (Year-Month-day) |
time | string |
The time that this order was accepted (Hour:Minute:Second) (GMT+1) |
Status Codes for an Order, they mean the same thing as status
(string)
Status Code (int ) |
Description |
---|---|
0 | Incomplete |
1 | Completed |
2 | Failed |
3 | Canceled |
4 | Ongoing Issues |
5 | Cancellation in progress |
6 | Cancellation awaiting approval from Administrator |
This object contains important information regarding the Origin Account associated with this order. The structure is self explanatory
{
"email": "[email protected]",
"password": "NotMyPassword!",
"backup_codes": [
93209320,
18439120
]
}
Name | Type | Description |
---|---|---|
string |
The login email for the Origin Account | |
password | string |
The login password for the Origin Account |
backup_codes | array of integers (int ) |
An array of Backup codes, represented as int . Each code is 8 digits long. You won't expect more than 3 codes within this array |
This object is similar to OriginObject without much differences rather than what
information the structure contains. If the Buyer has not set a value then the value
will simply be represented as null
{
"club_name": null,
"persona_name": null,
"security_answer": "exampleAnswer123"
}
Name | Type | Description |
---|---|---|
club_name | string null |
Club Name for FUT |
persona_name | string null |
Persona Name for FUT |
security_answer | string null |
Security Answer for FUT |
This module simply allows you to view the Order Details, if you have access to the order.
The payload is a simple representation of the OrderObject
object. See SupplierOrders
in this documentation, this section mentions the structure for ObjectOrder
Parameters used/required for this request
Parameter Name | Default Value | Required | Description |
---|---|---|---|
order_id | None | Yes | The Order ID that you want to view |
This is an example response with this GET
request
https://idbutsolutions.io/api/v1/SupplierOrder?api_key=<API_KEY>&order_id=<ORDER_ID>
{
"status": true,
"code": 200,
"payload": {
"id": "<ORDER_ID>",
"status": "Incomplete",
"status_code": 0,
"platform": "PS4",
"coins": 5000000,
"coins_f": "5.000.000",
"payout": 225,
"origin": {
"email": "[email protected]",
"password": "example123",
"backup_codes": [
93209320
]
},
"fut": {
"club_name": null,
"persona_name": null,
"security_answer": null
},
"date": "2019-02-13",
"time": "20:39:53"
},
"ref_code": "<REFERENCE CODE>"
}
If you attempt to make the same request above, but with an order you don't have access to then you would get this response
{
"status": false,
"message": "You don't have access to this order",
"code": 403,
"ref_code": "<REFERENCE CODE>"
}
And if the order simply doesn't exist
{
"status": false,
"message": "No results were found",
"code": 404,
"ref_code": "<REFERENCE CODE>"
}
This module completes an order that you have accepted. Upon completing this order the system will determine the the status of the order and add the payout funds to your account balance.
This action can only be used with an order where it's in such a state where it can be
completed, if there are any ongoing issues with the order then you will need to login
the Web Application (https://idbutsolutions.io
) and review the order to determine
if your response is required or not.
Please note that the user can also cancel the order during this time before the order gets completed. NOT After the order gets completed. If this is the case then you will need to login to the Web Application and go to the order to make your response on how much coins you've already transferred if any so you can get paid for coins you already transferred.
it is recommended to use SupplierOrder
to determine if there are any issues with the
order before using this module.
The response given from this module contains no Payload, to determine the success of
the request is by using status
and message
variables given in the response
Parameters used/required for this request
Parameter Name | Default Value | Required | Description |
---|---|---|---|
order_id | None | Yes | The Order ID that you want to view |
This is an example response when using a GET
request, and the order has been completed
successfully
https://idbutsolutions.io/api/v1/CompleteOrder?api_key=<API_KEY>&order_id=<ORDER_ID>
{
"status": true,
"message": "The order has been completed",
"code": 200,
"ref_code": "<REFERENCE CODE>"
}
The same request above, but the order is no no such state to be completed yet
{
"status": false,
"message": "The order is not in such state where it can be completed",
"code": 409,
"ref_code": "<REFERENCE CODE>"
}
This is the same request above, but in this case the same order has already been completed before
{
"status": false,
"message": "The order has already been completed",
"code": 409,
"ref_code": "<REFERENCE CODE>"
}
If the order cannot be completed due to another issue, then you would get this response
{
"status": false,
"message": "The order is not in such state where it can be completed",
"code": 409,
"ref_code": "<REFERENCE CODE>"
}
If that's the case, then use SupplierOrder
to determine the status of the order.
Any ongoing issues or cancellation requests needs to be resolved in the Web Application.
For security reasons we will not allow such actions to be taken in the API
This module simply returns basic information regarding your account and the server. The
response will contain a payload which is a SupplierInformationObject
object.
This module can be used with a very simple GET
request
https://idbutsolutions.io/api/v1/SupplierInformation?api_key=<API_KEY>
{
"status": true,
"code": 200,
"payload": {
"balance": 225,
"xbox_ppm": 35,
"ps4_ppm": 45,
"server_date": "2019-02-14",
"server_time": "20:47:35"
},
"ref_code": "<REFERENCE CODE>"
}
Name | Type | Description |
---|---|---|
balance | int flaot |
The balance your account currently holds (Euros) |
xbox_ppm | int float |
Price per million for FUT Coins on XBOX ONE. (Euros) |
ps4_ppm | int float |
Price per million for FUT Coins on PS4 (Euros) |
server_date | string |
The date on the server (Year-Month-Day) |
server_time | string |
The time on the server (Hour-Minute-Seconds) |
This documentation was written with β€οΈ by netkas