{ "id": 1846, "approved": true, "trait_values": { "fingerboard_inlay": [ "Dots-centered" ], "number_of_strings": [ "6" ], "number_of_pickups": [ "1" ], "pickup_1": [ "Transducer", "Magnetic" ], "soundhole": [ "4 Crescent-Shaped" ], "body_shape": [ "Dobro Woodbody Guitar Shape" ] }, "year_start": 1954, "year_end": 1954, "brand": { "id": 2, "name": "Fender", "approved": true }, "model": { "id": 2530, "name": "1954 Stratocaster", "approved": true, "brand_id": 2 }, "submodel": null, "images": [] }
You must provide a brand or brand_id and a model or model_id to retrieve results. If you are using admin credentials to access the API you may omit these parameters but you should consider caching the results within your application. In addition to filtering based on the parameters below, you can pass <trait_name>:<trait value id> to filter by any instrument trait.
Code | Description |
---|---|
400 | The request was unacceptable, often due to missing a required parameter. |
curl -X GET -H "Authorization: XXXXX" "https://api.axefax.com/instruments?brand=fender&serial_number=4900&model_id=2530" { "pagination": { "per_page": 25, "total_pages": 1, "total_objects": 6 }, "instruments": [ { "id": 1846, "approved": true, "trait_values": { "fingerboard_inlay": [ "Dots-centered" ], "number_of_strings": [ "6" ], "number_of_pickups": [ "1" ], "pickup_1": [ "Transducer", "Magnetic" ], "soundhole": [ "4 Crescent-Shaped" ], "body_shape": [ "Dobro Woodbody Guitar Shape" ] }, "year_start": 1954, "year_end": 1954, "brand": { "id": 2, "name": "Fender", "approved": true }, "model": { "id": 2530, "name": "1954 Stratocaster", "approved": true, "brand_id": 2 }, "submodel": null, "images": [] }, .... ], "serial_number_ranges": [ { "id": 122, "name": "FENDER", "years": "1950 - 1954", "brand_id": 2, "created_at": "2016-01-12T22:27:43.964Z", "updated_at": "2016-01-12T22:28:08.424Z", "instrument_id": null } ] } ]
GET /instruments 200 { "pagination": { "per_page": 25, "total_pages": 0, "total_objects": 0 }, "instruments": [], "serial_number_ranges": [] }
Param name | Description |
---|---|
page optional |
Validations:
|
per_page optional |
Validations:
|
name optional |
Validations:
|
shallow optional |
Pass true to include trait values, or false to include the IDs of values (faster). Default: false. Validations:
|
brand optional |
Filter based on a brand name Validations:
|
brand_id optional |
Filter based on a brand id Validations:
|
model_id optional |
Filter based on a model id Validations:
|
submodel_id optional |
Filter based on a submodel id Validations:
|
year optional |
Filter based on a year Validations:
|
serial_number optional |
Filter based on a year provided by a serial number Validations:
|
approved optional |
Validations:
|
pending optional |
Validations:
|
You must provide a brand or brand_id and a model or model_id to retrieve possible traits. Ideally, your application should fetch /traits-with-variance
once the user has selected a brand, model and/or submodel. If you are using admin credentials to access the API you may omit these parameters but you should consider caching the results within your application.
By default, this API returns a set of possibilities for every trait. If you only need information about one trait, or a handful of traits, use the only
parameter to improve performance (ex: ?only=fingerboard_inlay,truss_rod
)
Code | Description |
---|---|
400 | The request was unacceptable, often due to missing a required parameter. |
curl -X GET -H "Authorization: XXXXX" "https://api.axefax.com/instruments/traits-with-variance?brand=fender&model=Stratocaster&serial_number=4900" { "number_of_strings": [ { "id": 1954, "value": "6", "description": "None provided." } ], "body_shape": [ { "id": 36, "value": "Stratocaster", "description": "None provided." } ], "top": [ { "id": 2303, "value": "13 Body 27 Top", "description": "None provided." }, { "id": 2305, "value": "8 Body 27 Top", "description": "None provided." } ], "back_and_sides": [], "body_width": [], "body_length": [], "body_thickness": [], "soundhole": [ { "id": 264, "value": "None", "description": "None provided." } ], ... }
Param name | Description |
---|---|
shallow optional |
Pass true to include trait values, or false to include the IDs of values (faster). Default: false. Validations:
|
only optional |
Pass a comma-separated list of trait keys to look up variance for only those traits. Limiting your search can make the API much faster. For ex: &only=fingerboard_inlay,truss_rod Validations:
|
brand optional |
Filter based on a brand name Validations:
|
brand_id optional |
Filter based on a brand id Validations:
|
model optional |
Filter based on a model name Validations:
|
model_id optional |
Filter based on a model id Validations:
|
submodel optional |
Filter based on a submodel name Validations:
|
submodel_id optional |
Filter based on a submodel id Validations:
|
year optional |
Filter based on a year Validations:
|
serial_number optional |
Filter based on a year provided by a serial number Validations:
|
approved optional |
Validations:
|
pending optional |
Validations:
|
Code | Description |
---|---|
400 | The request was unacceptable, often due to missing a required parameter. |
GET /instruments/468 200 { "id": 468, "approved": false, "trait_values": {}, "type": "Guitars", "year_start": null, "year_end": null, "brand": { "id": 4307, "name": "Treck1f91dbab-199e-476e-94bd-20f182804d0e", "approved": true, "type": "Guitars" }, "model": { "id": 3430, "name": "B620e9ede4e-fd7a-430f-a17e-73d3df1c2258", "approved": false, "brand_id": 4307 }, "submodel": { "id": 1890, "name": "Nichole Bechtelarcfdfd929-a121-4d78-9052-618735d53436", "approved": false, "brand_id": 4307, "model_id": 3430 }, "images": [] }
Param name | Description |
---|---|
shallow optional |
Pass true to include trait values, or false to include the IDs of values (faster). Validations:
|
Code | Description |
---|---|
400 |
POST /instruments { "brand_id": 4308, "model_id": 3431, "submodel_id": 1891, "instrument": { "brand_id": 4308, "model_id": 3431, "submodel_id": 1891 } } 201 { "id": 469, "approved": false, "trait_values": {}, "type": "Guitars", "year_start": null, "year_end": null, "brand": { "id": 4308, "name": "Casyncf6b8974f-617e-455d-8421-c2ef5d15baae", "approved": true, "type": "Guitars" }, "model": { "id": 3431, "name": "M-27843c87b952-eb42-4f0a-a918-94bc3834e25b", "approved": false, "brand_id": 4308 }, "submodel": { "id": 1891, "name": "Tyree Reynoldscc50590a-f42a-4c85-a097-c5dd79eef14b", "approved": false, "brand_id": 4308, "model_id": 3431 }, "images": [] }
Param name | Description |
---|---|
name optional |
Validations:
|
brand_id optional |
Validations:
|
model_id optional |
Validations:
|
submodel_id optional |
Validations:
|
Code | Description |
---|---|
400 |
PATCH /instruments/470 { "submodel_id": 1893, "instrument": { "submodel_id": 1893 } } 202 { "id": 470, "approved": false, "trait_values": {}, "type": "Guitars", "year_start": null, "year_end": null, "brand": { "id": 4309, "name": "Brancea5d4b3f1-112a-4565-b617-711208cc90be", "approved": true, "type": "Guitars" }, "model": { "id": 3432, "name": "KO-9560f77a123d-0f8c-4837-934b-4b202623fbf5", "approved": false, "brand_id": 4309 }, "submodel": { "id": 1893, "name": "Arianna Zemlak5f965600-477c-4b2d-b288-dc1a5a560fd3", "approved": true, "brand_id": 4309, "model_id": 3432 }, "images": [] }
Param name | Description |
---|---|
name optional |
Validations:
|
brand_id optional |
Validations:
|
model_id optional |
Validations:
|
submodel_id optional |
Validations:
|
Code | Description |
---|---|
400 | The request was unacceptable, often due to missing a required parameter. |
DELETE /instruments/472 { "instrument": {} } 204