esi-sdk 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. checksums.yaml +7 -0
  2. data/.editorconfig +9 -0
  3. data/.github/ISSUE_TEMPLATE/bug_report.md +36 -0
  4. data/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
  5. data/.github/ISSUE_TEMPLATE/support.md +7 -0
  6. data/.github/PULL_REQUEST_TEMPLATE.md +37 -0
  7. data/.github/dependabot.yml +17 -0
  8. data/.github/workflows/cicd.yml +181 -0
  9. data/.gitignore +11 -0
  10. data/.rspec +2 -0
  11. data/.rubocop.yml +36 -0
  12. data/.ruby-version +1 -0
  13. data/.yardext.rb +18 -0
  14. data/.yardopts +17 -0
  15. data/CHANGELOG.md +17 -0
  16. data/CODE_OF_CONDUCT.md +84 -0
  17. data/CONTRIBUTING.md +69 -0
  18. data/Gemfile +24 -0
  19. data/Gemfile.lock +141 -0
  20. data/LICENSE.txt +21 -0
  21. data/README.md +87 -0
  22. data/Rakefile +349 -0
  23. data/SECURITY.md +13 -0
  24. data/bin/console +15 -0
  25. data/bin/setup +8 -0
  26. data/esi-sdk.gemspec +32 -0
  27. data/exe/esi-sdk +4 -0
  28. data/lib/esi/client/alliance.rb +104 -0
  29. data/lib/esi/client/assets.rb +179 -0
  30. data/lib/esi/client/bookmarks.rb +126 -0
  31. data/lib/esi/client/calendar.rb +139 -0
  32. data/lib/esi/client/character.rb +389 -0
  33. data/lib/esi/client/clones.rb +69 -0
  34. data/lib/esi/client/contacts.rb +277 -0
  35. data/lib/esi/client/contracts.rb +274 -0
  36. data/lib/esi/client/corporation.rb +626 -0
  37. data/lib/esi/client/dogma.rb +117 -0
  38. data/lib/esi/client/faction_warfare.rb +196 -0
  39. data/lib/esi/client/fittings.rb +93 -0
  40. data/lib/esi/client/fleets.rb +428 -0
  41. data/lib/esi/client/incursions.rb +30 -0
  42. data/lib/esi/client/industry.rb +237 -0
  43. data/lib/esi/client/insurance.rb +30 -0
  44. data/lib/esi/client/killmails.rb +95 -0
  45. data/lib/esi/client/location.rb +100 -0
  46. data/lib/esi/client/loyalty.rb +61 -0
  47. data/lib/esi/client/mail.rb +244 -0
  48. data/lib/esi/client/market.rb +302 -0
  49. data/lib/esi/client/opportunities.rb +124 -0
  50. data/lib/esi/client/planetary_interaction.rb +122 -0
  51. data/lib/esi/client/routes.rb +37 -0
  52. data/lib/esi/client/search.rb +68 -0
  53. data/lib/esi/client/skills.rb +97 -0
  54. data/lib/esi/client/sovereignty.rb +74 -0
  55. data/lib/esi/client/status.rb +31 -0
  56. data/lib/esi/client/universe.rb +640 -0
  57. data/lib/esi/client/user_interface.rb +145 -0
  58. data/lib/esi/client/wallet.rb +191 -0
  59. data/lib/esi/client/wars.rb +82 -0
  60. data/lib/esi/client.rb +225 -0
  61. data/lib/esi/errors.rb +51 -0
  62. data/lib/esi/version.rb +5 -0
  63. data/lib/esi-sdk.rb +8 -0
  64. data/release.config.js +32 -0
  65. data/yard/fulldoc/html/css/pygments-default.css +69 -0
  66. data/yard/fulldoc/html/setup.rb +6 -0
  67. data/yard/layout/html/setup.rb +6 -0
  68. metadata +156 -0
@@ -0,0 +1,122 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ESI
4
+ class Client
5
+ # ESI planetary interaction operations.
6
+ module PlanetaryInteraction
7
+ # Returns full details on the layout of a single planetary colony, including links, pins and routes. Note: Planetary information is only recalculated when the colony is viewed through the client. Information will not update until this criteria is met.
8
+ #
9
+ # This endpoint requires authorization (see {ESI::Client#authorize}).
10
+ #
11
+ # @esi_scope esi-planets.manage_planets.v1
12
+ #
13
+ # @esi_version dev
14
+ # @esi_version v3
15
+ #
16
+ # @param character_id [Integer,String] An EVE character ID
17
+ # @param planet_id [Integer,String] Planet id of the target planet
18
+ # @param params [Hash] Additional query string parameters
19
+ # @param headers [Hash] Additional headers
20
+ #
21
+ # @raise [ESI::Errors::BadRequestError] Bad request
22
+ # @raise [ESI::Errors::UnauthorizedError] Unauthorized
23
+ # @raise [ESI::Errors::ForbiddenError] Forbidden
24
+ # @raise [ESI::Errors::NotFoundError] Colony not found
25
+ # @raise [ESI::Errors::ErrorLimitedError] Error limited
26
+ # @raise [ESI::Errors::InternalServerError] Internal server error
27
+ # @raise [ESI::Errors::ServiceUnavailableError] Service unavailable
28
+ # @raise [ESI::Errors::GatewayTimeoutError] Gateway timeout
29
+ #
30
+ # @see https://esi.evetech.net/ui/#/Planetary Interaction/get_characters_character_id_planets_planet_id
31
+ def get_character_planet(character_id:, planet_id:, params: {}, headers: {})
32
+ get("/characters/#{character_id}/planets/#{planet_id}/", headers: headers, params: params)
33
+ end
34
+ alias get_characters_character_id_planets_planet_id get_character_planet
35
+
36
+ # Returns a list of all planetary colonies owned by a character.
37
+ #
38
+ # This endpoint is cached for up to 600 seconds.
39
+ #
40
+ # This endpoint requires authorization (see {ESI::Client#authorize}).
41
+ #
42
+ # @esi_scope esi-planets.manage_planets.v1
43
+ #
44
+ # @esi_version dev
45
+ # @esi_version legacy
46
+ # @esi_version v1
47
+ #
48
+ # @param character_id [Integer,String] An EVE character ID
49
+ # @param params [Hash] Additional query string parameters
50
+ # @param headers [Hash] Additional headers
51
+ #
52
+ # @raise [ESI::Errors::BadRequestError] Bad request
53
+ # @raise [ESI::Errors::UnauthorizedError] Unauthorized
54
+ # @raise [ESI::Errors::ForbiddenError] Forbidden
55
+ # @raise [ESI::Errors::ErrorLimitedError] Error limited
56
+ # @raise [ESI::Errors::InternalServerError] Internal server error
57
+ # @raise [ESI::Errors::ServiceUnavailableError] Service unavailable
58
+ # @raise [ESI::Errors::GatewayTimeoutError] Gateway timeout
59
+ #
60
+ # @see https://esi.evetech.net/ui/#/Planetary Interaction/get_characters_character_id_planets
61
+ def get_character_planets(character_id:, params: {}, headers: {})
62
+ get("/characters/#{character_id}/planets/", headers: headers, params: params)
63
+ end
64
+ alias get_characters_character_id_planets get_character_planets
65
+
66
+ # List customs offices owned by a corporation.
67
+ #
68
+ # This endpoint is cached for up to 3600 seconds.
69
+ #
70
+ # This endpoint requires authorization (see {ESI::Client#authorize}).
71
+ #
72
+ # @esi_scope esi-planets.read_customs_offices.v1
73
+ #
74
+ # @esi_version dev
75
+ # @esi_version legacy
76
+ # @esi_version v1
77
+ #
78
+ # @param corporation_id [Integer,String] An EVE corporation ID
79
+ # @param params [Hash] Additional query string parameters
80
+ # @param headers [Hash] Additional headers
81
+ #
82
+ # @raise [ESI::Errors::BadRequestError] Bad request
83
+ # @raise [ESI::Errors::UnauthorizedError] Unauthorized
84
+ # @raise [ESI::Errors::ForbiddenError] Forbidden
85
+ # @raise [ESI::Errors::ErrorLimitedError] Error limited
86
+ # @raise [ESI::Errors::InternalServerError] Internal server error
87
+ # @raise [ESI::Errors::ServiceUnavailableError] Service unavailable
88
+ # @raise [ESI::Errors::GatewayTimeoutError] Gateway timeout
89
+ #
90
+ # @see https://esi.evetech.net/ui/#/Planetary Interaction/get_corporations_corporation_id_customs_offices
91
+ def get_corporation_customs_offices(corporation_id:, params: {}, headers: {})
92
+ get("/corporations/#{corporation_id}/customs_offices/", headers: headers, params: params)
93
+ end
94
+ alias get_corporations_corporation_id_customs_offices get_corporation_customs_offices
95
+
96
+ # Get information on a planetary factory schematic.
97
+ #
98
+ # This endpoint is cached for up to 3600 seconds.
99
+ #
100
+ # @esi_version dev
101
+ # @esi_version legacy
102
+ # @esi_version v1
103
+ #
104
+ # @param schematic_id [Integer,String] A PI schematic ID
105
+ # @param params [Hash] Additional query string parameters
106
+ # @param headers [Hash] Additional headers
107
+ #
108
+ # @raise [ESI::Errors::BadRequestError] Bad request
109
+ # @raise [ESI::Errors::NotFoundError] Schematic not found
110
+ # @raise [ESI::Errors::ErrorLimitedError] Error limited
111
+ # @raise [ESI::Errors::InternalServerError] Internal server error
112
+ # @raise [ESI::Errors::ServiceUnavailableError] Service unavailable
113
+ # @raise [ESI::Errors::GatewayTimeoutError] Gateway timeout
114
+ #
115
+ # @see https://esi.evetech.net/ui/#/Planetary Interaction/get_universe_schematics_schematic_id
116
+ def get_universe_schematic(schematic_id:, params: {}, headers: {})
117
+ get("/universe/schematics/#{schematic_id}/", headers: headers, params: params)
118
+ end
119
+ alias get_universe_schematics_schematic_id get_universe_schematic
120
+ end
121
+ end
122
+ end
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ESI
4
+ class Client
5
+ # ESI routes operations.
6
+ module Route
7
+ # Get the systems between origin and destination.
8
+ #
9
+ # This endpoint is cached for up to 86400 seconds.
10
+ #
11
+ # @esi_version dev
12
+ # @esi_version legacy
13
+ # @esi_version v1
14
+ #
15
+ # @param destination [Integer,String] destination solar system ID
16
+ # @param origin [Integer,String] origin solar system ID
17
+ # @param avoid [Array] avoid solar system ID(s)
18
+ # @param connections [Array] connected solar system pairs
19
+ # @param flag [String] route security preference
20
+ # @param params [Hash] Additional query string parameters
21
+ # @param headers [Hash] Additional headers
22
+ #
23
+ # @raise [ESI::Errors::BadRequestError] Bad request
24
+ # @raise [ESI::Errors::NotFoundError] No route found
25
+ # @raise [ESI::Errors::ErrorLimitedError] Error limited
26
+ # @raise [ESI::Errors::InternalServerError] Internal server error
27
+ # @raise [ESI::Errors::ServiceUnavailableError] Service unavailable
28
+ # @raise [ESI::Errors::GatewayTimeoutError] Gateway timeout
29
+ #
30
+ # @see https://esi.evetech.net/ui/#/Routes/get_route_origin_destination
31
+ def get_route_origin_destination(destination:, origin:, avoid:, connections:, flag:, params: {}, headers: {})
32
+ query_string = URI.encode_www_form([["avoid", avoid], ["connections", connections], ["flag", flag]])
33
+ get("/route/#{origin}/#{destination}/?#{query_string}", headers: headers, params: params)
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,68 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ESI
4
+ class Client
5
+ # ESI search operations.
6
+ module Search
7
+ # Search for entities that match a given sub-string.
8
+ #
9
+ # This endpoint is cached for up to 3600 seconds.
10
+ #
11
+ # This endpoint requires authorization (see {ESI::Client#authorize}).
12
+ #
13
+ # @esi_scope esi-search.search_structures.v1
14
+ #
15
+ # @esi_version dev
16
+ # @esi_version legacy
17
+ # @esi_version v3
18
+ #
19
+ # @param character_id [Integer,String] An EVE character ID
20
+ # @param categories [Array] Type of entities to search for
21
+ # @param search [String] The string to search on
22
+ # @param strict [Boolean] Whether the search should be a strict match
23
+ # @param params [Hash] Additional query string parameters
24
+ # @param headers [Hash] Additional headers
25
+ #
26
+ # @raise [ESI::Errors::BadRequestError] Bad request
27
+ # @raise [ESI::Errors::UnauthorizedError] Unauthorized
28
+ # @raise [ESI::Errors::ForbiddenError] Forbidden
29
+ # @raise [ESI::Errors::ErrorLimitedError] Error limited
30
+ # @raise [ESI::Errors::InternalServerError] Internal server error
31
+ # @raise [ESI::Errors::ServiceUnavailableError] Service unavailable
32
+ # @raise [ESI::Errors::GatewayTimeoutError] Gateway timeout
33
+ #
34
+ # @see https://esi.evetech.net/ui/#/Search/get_characters_character_id_search
35
+ def get_character_search(character_id:, categories:, search:, strict:, params: {}, headers: {})
36
+ query_string = URI.encode_www_form([["categories", categories], ["search", search], ["strict", strict]])
37
+ get("/characters/#{character_id}/search/?#{query_string}", headers: headers, params: params)
38
+ end
39
+ alias get_characters_character_id_search get_character_search
40
+
41
+ # Search for entities that match a given sub-string.
42
+ #
43
+ # This endpoint is cached for up to 3600 seconds.
44
+ #
45
+ # @esi_version dev
46
+ # @esi_version legacy
47
+ # @esi_version v2
48
+ #
49
+ # @param categories [Array] Type of entities to search for
50
+ # @param search [String] The string to search on
51
+ # @param strict [Boolean] Whether the search should be a strict match
52
+ # @param params [Hash] Additional query string parameters
53
+ # @param headers [Hash] Additional headers
54
+ #
55
+ # @raise [ESI::Errors::BadRequestError] Bad request
56
+ # @raise [ESI::Errors::ErrorLimitedError] Error limited
57
+ # @raise [ESI::Errors::InternalServerError] Internal server error
58
+ # @raise [ESI::Errors::ServiceUnavailableError] Service unavailable
59
+ # @raise [ESI::Errors::GatewayTimeoutError] Gateway timeout
60
+ #
61
+ # @see https://esi.evetech.net/ui/#/Search/get_search
62
+ def get_search(categories:, search:, strict:, params: {}, headers: {})
63
+ query_string = URI.encode_www_form([["categories", categories], ["search", search], ["strict", strict]])
64
+ get("/search/?#{query_string}", headers: headers, params: params)
65
+ end
66
+ end
67
+ end
68
+ end
@@ -0,0 +1,97 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ESI
4
+ class Client
5
+ # ESI skills operations.
6
+ module Skill
7
+ # Return attributes of a character.
8
+ #
9
+ # This endpoint is cached for up to 120 seconds.
10
+ #
11
+ # This endpoint requires authorization (see {ESI::Client#authorize}).
12
+ #
13
+ # @esi_scope esi-skills.read_skills.v1
14
+ #
15
+ # @esi_version dev
16
+ # @esi_version legacy
17
+ # @esi_version v1
18
+ #
19
+ # @param character_id [Integer,String] An EVE character ID
20
+ # @param params [Hash] Additional query string parameters
21
+ # @param headers [Hash] Additional headers
22
+ #
23
+ # @raise [ESI::Errors::BadRequestError] Bad request
24
+ # @raise [ESI::Errors::UnauthorizedError] Unauthorized
25
+ # @raise [ESI::Errors::ForbiddenError] Forbidden
26
+ # @raise [ESI::Errors::ErrorLimitedError] Error limited
27
+ # @raise [ESI::Errors::InternalServerError] Internal server error
28
+ # @raise [ESI::Errors::ServiceUnavailableError] Service unavailable
29
+ # @raise [ESI::Errors::GatewayTimeoutError] Gateway timeout
30
+ #
31
+ # @see https://esi.evetech.net/ui/#/Skills/get_characters_character_id_attributes
32
+ def get_character_attributes(character_id:, params: {}, headers: {})
33
+ get("/characters/#{character_id}/attributes/", headers: headers, params: params)
34
+ end
35
+ alias get_characters_character_id_attributes get_character_attributes
36
+
37
+ # List the configured skill queue for the given character.
38
+ #
39
+ # This endpoint is cached for up to 120 seconds.
40
+ #
41
+ # This endpoint requires authorization (see {ESI::Client#authorize}).
42
+ #
43
+ # @esi_scope esi-skills.read_skillqueue.v1
44
+ #
45
+ # @esi_version dev
46
+ # @esi_version legacy
47
+ # @esi_version v2
48
+ #
49
+ # @param character_id [Integer,String] An EVE character ID
50
+ # @param params [Hash] Additional query string parameters
51
+ # @param headers [Hash] Additional headers
52
+ #
53
+ # @raise [ESI::Errors::BadRequestError] Bad request
54
+ # @raise [ESI::Errors::UnauthorizedError] Unauthorized
55
+ # @raise [ESI::Errors::ForbiddenError] Forbidden
56
+ # @raise [ESI::Errors::ErrorLimitedError] Error limited
57
+ # @raise [ESI::Errors::InternalServerError] Internal server error
58
+ # @raise [ESI::Errors::ServiceUnavailableError] Service unavailable
59
+ # @raise [ESI::Errors::GatewayTimeoutError] Gateway timeout
60
+ #
61
+ # @see https://esi.evetech.net/ui/#/Skills/get_characters_character_id_skillqueue
62
+ def get_character_skillqueue(character_id:, params: {}, headers: {})
63
+ get("/characters/#{character_id}/skillqueue/", headers: headers, params: params)
64
+ end
65
+ alias get_characters_character_id_skillqueue get_character_skillqueue
66
+
67
+ # List all trained skills for the given character.
68
+ #
69
+ # This endpoint is cached for up to 120 seconds.
70
+ #
71
+ # This endpoint requires authorization (see {ESI::Client#authorize}).
72
+ #
73
+ # @esi_scope esi-skills.read_skills.v1
74
+ #
75
+ # @esi_version dev
76
+ # @esi_version v4
77
+ #
78
+ # @param character_id [Integer,String] An EVE character ID
79
+ # @param params [Hash] Additional query string parameters
80
+ # @param headers [Hash] Additional headers
81
+ #
82
+ # @raise [ESI::Errors::BadRequestError] Bad request
83
+ # @raise [ESI::Errors::UnauthorizedError] Unauthorized
84
+ # @raise [ESI::Errors::ForbiddenError] Forbidden
85
+ # @raise [ESI::Errors::ErrorLimitedError] Error limited
86
+ # @raise [ESI::Errors::InternalServerError] Internal server error
87
+ # @raise [ESI::Errors::ServiceUnavailableError] Service unavailable
88
+ # @raise [ESI::Errors::GatewayTimeoutError] Gateway timeout
89
+ #
90
+ # @see https://esi.evetech.net/ui/#/Skills/get_characters_character_id_skills
91
+ def get_character_skills(character_id:, params: {}, headers: {})
92
+ get("/characters/#{character_id}/skills/", headers: headers, params: params)
93
+ end
94
+ alias get_characters_character_id_skills get_character_skills
95
+ end
96
+ end
97
+ end
@@ -0,0 +1,74 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ESI
4
+ class Client
5
+ # ESI sovereignty operations.
6
+ module Sovereignty
7
+ # Shows sovereignty data for campaigns.
8
+ #
9
+ # This endpoint is cached for up to 5 seconds.
10
+ #
11
+ # @esi_version dev
12
+ # @esi_version legacy
13
+ # @esi_version v1
14
+ #
15
+ # @param params [Hash] Additional query string parameters
16
+ # @param headers [Hash] Additional headers
17
+ #
18
+ # @raise [ESI::Errors::BadRequestError] Bad request
19
+ # @raise [ESI::Errors::ErrorLimitedError] Error limited
20
+ # @raise [ESI::Errors::InternalServerError] Internal server error
21
+ # @raise [ESI::Errors::ServiceUnavailableError] Service unavailable
22
+ # @raise [ESI::Errors::GatewayTimeoutError] Gateway timeout
23
+ #
24
+ # @see https://esi.evetech.net/ui/#/Sovereignty/get_sovereignty_campaigns
25
+ def get_sovereignty_campaigns(params: {}, headers: {})
26
+ get("/sovereignty/campaigns/", headers: headers, params: params)
27
+ end
28
+
29
+ # Shows sovereignty information for solar systems.
30
+ #
31
+ # This endpoint is cached for up to 3600 seconds.
32
+ #
33
+ # @esi_version dev
34
+ # @esi_version legacy
35
+ # @esi_version v1
36
+ #
37
+ # @param params [Hash] Additional query string parameters
38
+ # @param headers [Hash] Additional headers
39
+ #
40
+ # @raise [ESI::Errors::BadRequestError] Bad request
41
+ # @raise [ESI::Errors::ErrorLimitedError] Error limited
42
+ # @raise [ESI::Errors::InternalServerError] Internal server error
43
+ # @raise [ESI::Errors::ServiceUnavailableError] Service unavailable
44
+ # @raise [ESI::Errors::GatewayTimeoutError] Gateway timeout
45
+ #
46
+ # @see https://esi.evetech.net/ui/#/Sovereignty/get_sovereignty_map
47
+ def get_sovereignty_map(params: {}, headers: {})
48
+ get("/sovereignty/map/", headers: headers, params: params)
49
+ end
50
+
51
+ # Shows sovereignty data for structures.
52
+ #
53
+ # This endpoint is cached for up to 120 seconds.
54
+ #
55
+ # @esi_version dev
56
+ # @esi_version legacy
57
+ # @esi_version v1
58
+ #
59
+ # @param params [Hash] Additional query string parameters
60
+ # @param headers [Hash] Additional headers
61
+ #
62
+ # @raise [ESI::Errors::BadRequestError] Bad request
63
+ # @raise [ESI::Errors::ErrorLimitedError] Error limited
64
+ # @raise [ESI::Errors::InternalServerError] Internal server error
65
+ # @raise [ESI::Errors::ServiceUnavailableError] Service unavailable
66
+ # @raise [ESI::Errors::GatewayTimeoutError] Gateway timeout
67
+ #
68
+ # @see https://esi.evetech.net/ui/#/Sovereignty/get_sovereignty_structures
69
+ def get_sovereignty_structures(params: {}, headers: {})
70
+ get("/sovereignty/structures/", headers: headers, params: params)
71
+ end
72
+ end
73
+ end
74
+ end
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ESI
4
+ class Client
5
+ # ESI status operations.
6
+ module Status
7
+ # EVE Server status.
8
+ #
9
+ # This endpoint is cached for up to 30 seconds.
10
+ #
11
+ # @esi_version dev
12
+ # @esi_version legacy
13
+ # @esi_version v1
14
+ # @esi_version v2
15
+ #
16
+ # @param params [Hash] Additional query string parameters
17
+ # @param headers [Hash] Additional headers
18
+ #
19
+ # @raise [ESI::Errors::BadRequestError] Bad request
20
+ # @raise [ESI::Errors::ErrorLimitedError] Error limited
21
+ # @raise [ESI::Errors::InternalServerError] Internal server error
22
+ # @raise [ESI::Errors::ServiceUnavailableError] Service unavailable
23
+ # @raise [ESI::Errors::GatewayTimeoutError] Gateway timeout
24
+ #
25
+ # @see https://esi.evetech.net/ui/#/Status/get_status
26
+ def get_status(params: {}, headers: {})
27
+ get("/status/", headers: headers, params: params)
28
+ end
29
+ end
30
+ end
31
+ end